既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
思路:
我们将每个字符分别进行向前找相同字符和向后找相同字符,如果找到将num设为-1,判断num是否等于-1来判断是否跳出循环。
代码:
int FirstNotRepeatingChar(char* str) {
int num = 0;
for (int i = 0; i < strlen(str); i++)
{
if (num == -1)
{
num = i;
}
for (int j = 0; j < i; j++)
{
if (str[j] == str[i])
{
num = -1;
break;
}
}
if (num == -1&&i==strlen(str)-1)
{
break;
}
int n = i;
while (n < strlen(str))
{
if (str[n + 1] == str[i])
{
num = -1;
break;
}
n++;
}
if (num != -1)
{
return num;
}
}
return-1;
}
面试题 01.01. 判定字符是否唯一
面试题 01.01. 判定字符是否唯一https://leetcode.cn/problems/is-unique-lcci/
题目描述:
实现一个算法,确定一个字符串 s
的所有字符是否全都不同。
示例:
思路:
还是向前和向后判断是否有相同的字符,如果有直接返回false。
注意几种极端情况:
1.字符只有一个的时候,直接判断,
2.当下标遍历走到字符串长度-1的位置注意越界的情况。
代码:
bool isUnique(char* astr) {
int cur = 0;
int flag = 0;
if (strlen(astr) == 1)//避免astr的长度为1的特殊情况
return true;
while (cur < strlen(astr))
{
for (int i = 0; i < cur; i++)//向前判断相等
{
if (astr[i] == astr[cur])
{
flag = 1;
break;
}
}
![img](https://img-blog.csdnimg.cn/img_convert/b9480af427eb5a91ed2fe9905f7b16b0.png)
![img](https://img-blog.csdnimg.cn/img_convert/7bf87b5a8be8b7c4a16fa8d39dc0b270.png)
![img](https://img-blog.csdnimg.cn/img_convert/f76c4d0d57be918c793bb0b4098b14d2.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**
来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**