计算二进制字串环形链表环形链表 II 反转字符串中的元音字母
创始人
2025-05-29 13:41:28
0次

计数二进制字串

来源:自己LeetCode刷题

696. 计数二进制子串 - 力扣(LeetCode)

#include 
int countBinarySubstrings(char * s)
{int sz=strlen(s);int ans=0;int i=1;while (i<=sz-1){char ch1=s[i-1];char ch2=s[i];if (ch1!=ch2){int left=i-1;int right=i;while(left>=0 && right<=sz-1){if (s[left]==ch1 && s[right]==ch2){ans++;left--;right++;}else{break;}}}i++;}return ans;
}
#include 
#define N 100010
int countBinarySubstrings(char * s)
{int ans=0;int sz=strlen(s);int arr[sz];int sz1=0;int flag=0;char ch=0;int count=0;for (int i=0;i
我想说:
  1. 可以算是一种比较新奇的思路吧。


环形链表

来源:杭哥

141. 环形链表 - 力扣(LeetCode)

typedef struct ListNode ListNode;
bool hasCycle(struct ListNode *head) 
{ListNode* slow=head;ListNode* fast=head;while(fast!=NULL && fast->next!=NULL){slow=slow->next;fast=fast->next->next;if (fast==slow){return true;}}return false;
}
我想说:
  1. 判断一个链表是不是是一个环形链表的话,就只需要去设置快慢指针,然后让曼指针每次走一步,快指针每次走两步,这样子的话,快指针会先进入到环当中,然后等到慢指针也进入到这个环当中的时候,这时候相当于在环里面就变成了一个追击问题,由于他们两个的速度差为1,因此他们的距离每次都会缩短1,因此肯定会相遇。


环形链表 II

来源:杭哥

142. 环形链表 II - 力扣(LeetCode)

typedef struct ListNode ListNode;
struct ListNode *detectCycle(struct ListNode *head) 
{ListNode* slow=head;ListNode* fast=head;while(fast!=NULL && fast->next!=NULL){slow=slow->next;fast=fast->next->next;if (fast==slow){ListNode* cur1=slow;ListNode* cur2=head;while(cur1!=cur2){cur1=cur1->next;cur2=cur2->next;}return cur1;}}return NULL;
}
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/typedef struct ListNode ListNode;
struct ListNode *detectCycle(struct ListNode *head) 
{ListNode* slow=head;ListNode* fast=head;while(fast!=NULL && fast->next!=NULL){slow=slow->next;fast=fast->next->next;if (fast==slow){ListNode* cur1=slow->next;ListNode* head1=cur1;slow->next=NULL;ListNode* cur2=head;int sz1=1;int sz2=1;while(cur2->next!=NULL){sz2++;cur2=cur2->next;}while(cur1->next!=NULL){sz1++;cur1=cur1->next;}int gap=abs(sz1-sz2);ListNode* longlist=head1;ListNode* shortlist=head;if (sz2>sz1){longlist=head;shortlist=head1;}while(gap--){longlist=longlist->next;}while(longlist!=shortlist){longlist=longlist->next;shortlist=shortlist->next;}return longlist;}}return NULL;
}
我想说:
  1. 这就需要利用到一个结论,如果一个指针从相遇点出发,一个指针从起始点出发,他们两个行走的速度都是一样的,那么他们必将会在入环点相遇。

  1. 其次,链表带环问题如果要求入环点的话,也可以把它转化成相交链表问题,这时候需要人为的把环当中的某一段给人为的斩断,这相当于就形成了两个相交的链表。


反转字符串中的元音字母

来源:自己LeetCode刷题

345. 反转字符串中的元音字母 - 力扣(LeetCode)

#include 
#include 
char * reverseVowels(char * s)
{int sz=strlen(s);int i=0;int j=sz-1;while(i=0 && s[j]!='a'&&s[j]!='A'&& s[j]!='e'&&s[j]!='E' && s[j]!='i' &&s[j]!='I' && s[j]!='o'&&s[j]!='O'&& s[j]!='u'&&s[j]!='U'){j--;}if (i
我想说:
  1. 双指针呗,有啥好说的。


相关内容

热门资讯

今日科普作弊器!久久互娱作弊器... 今日科普作弊器!久久互娱作弊器AI插件,久久互娱多功能原来真的有作弊器插件久久互娱是不是有人用挂微扑...
揭秘!常胜棋牌透视功能脚本,常... 揭秘!常胜棋牌透视功能脚本,常胜棋牌都是是有透视脚本(有辅助挂辅教程)1、在常胜棋牌插件功能辅助器技...
科技揭秘透视挂!丫丫衡阳字牌3... 科技揭秘透视挂!丫丫衡阳字牌3透视挂AI软件,丫丫衡阳字牌3多功能总是是有透视挂软件1、许多玩家不知...
玩家必备教程透视挂!葫芦岛爱玩... 玩家必备教程透视挂!葫芦岛爱玩麻将透视挂AI攻略,葫芦岛爱玩麻将多功能确实有透视挂攻略1、下载好葫芦...
玩家实测!微乐陕西三带透视功能... 玩家实测!微乐陕西三带透视功能插件,微乐陕西三带一贯有透视插件(详细教程辅助)微乐陕西三带能透视中分...
重大通报外挂!闲逸斗地主外挂A... 重大通报外挂!闲逸斗地主外挂AI方法,闲逸斗地主多功能一贯是有外挂方法闲逸斗地主能透视中分为三种模型...
一分钟了解!棋牌游辅助功能攻略... 一分钟了解!棋牌游辅助功能攻略,棋牌游本来真的是有辅助攻略(有辅助挂技巧)1、进入游戏-大厅左侧-新...
科技新动态辅助!老地方辅助AI... 科技新动态辅助!老地方辅助AI脚本,老地方多功能总是真的有辅助脚本1、每一步都需要思考,不同水平的挑...
如何分辨真伪!蜜瓜大厅辅助器功... 如何分辨真伪!蜜瓜大厅辅助器功能方法,蜜瓜大厅切实真的是有辅助器方法(有挂辅方法)在进入蜜瓜大厅软件...
一分钟秒懂开挂!姜堰23张开挂... 一分钟秒懂开挂!姜堰23张开挂AI教程,姜堰23张多功能切实存在有开挂教程1、姜堰23张公共底牌简单...