Leedcode学习与测试
LEETCODE
Stupid_Gao
机械类学生,略懂单片机,C语言,学习C++中
展开
-
LC字符串转换为整数(C语言实现)
请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:读入字符串并丢弃无用的前导空格检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。 确定最终结果是负数还是正数。 如果两者都不存在,则假定结果为正。读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。将前面步骤读入的这些数字转换为整数(即,“123” -转载 2021-09-07 10:18:08 · 217 阅读 · 0 评论 -
[LeetCode] 204.计数质数(Easy)C语言题解
详细参考网址如下:https://blog.csdn.net/qq_41979043/article/details/89031285int countPrimes(int n){ int count = 0,s = sqrt(n); int *arr = malloc(sizeof(int)*n); if(n>2) { for(int i=2;i<n;i++) arr[i]=1; for(int i=2转载 2021-09-05 21:04:33 · 81 阅读 · 0 评论 -
LC 回文链表学习记录(摘自Leedcode官方题解)
234. 回文链表给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。官方题解:方法一:将值复制到数组后的双指针法即:双指针比较两端元素,并向中间移动。分为以下两个步骤:1.复制链表值到数组列表中。2.使用双指针法判断是否为回文。第一步:遍历链表将数值赋值到数组链表中。CurrentNode指向当前节点,每次迭代向数组添加currentNode.val并更新currentNode = currentNode.next ,当c原创 2021-09-01 15:23:14 · 69 阅读 · 0 评论 -
LC反转链表(C)
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。链表可以选用迭代或递归方式完成反转。你能否用两种方法解决这道题?看了很多方法:重要推三指针法和迭代法:方法一:三指针法NULL ->pA->pB->pTempstruct ListNode* reverseList(struct ListNode* head){ struct ListNode *pA = NULL; struct ListNode *pB = head; struct ListNode *转载 2021-08-30 14:55:19 · 95 阅读 · 0 评论 -
LC删除链表的倒数第N个节点(C)待补充
给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?https://leetcode-cn.com/leetbook/read/top-interview-questions-easy/xn2925/这个算法主要考察以下几个知识点,可惜我还没有学透,只能参考别人代码。重点考察的知识点为:双指针或者快慢指针方法,先把参考代码放上面,后续会做补充。/** * Definition for singly-linked list. * struct Li原创 2021-08-26 14:13:05 · 73 阅读 · 0 评论 -
LC字符串中的第一个唯一字符(C语言实现)
字符串中的第一个唯一字符给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = “leetcode”返回 0s = “loveleetcode”返回 2//此方法不为唯一解,刷二遍的时候会补充思路:(1)申请ASCII码数量的空间,百度查ASICC码表为256个,并给所有数值初始化为0(2)遍历字符串S,出现每个值都到对应的ASICC码表去+1(3)遍历s[i]的值在judge[]数组中的值为多少,若为1,则满足。要求#include <原创 2021-08-23 09:47:46 · 326 阅读 · 0 评论