Leetcode——链表
sqiu_11
“取乎其上,得乎其中;取乎其中,得乎其下;取乎其下,则无所得矣”
展开
-
Leetcode 141/142 (链表题) Linked List Cycle && Linked List Cycle II
问题1:https://leetcode.com/problems/linked-list-cycle/#/description141. 判断链表中是否有环class Solution {public: bool hasCycle(ListNode *head) { ListNode *slow=head; ListNode原创 2017-04-09 16:58:25 · 340 阅读 · 0 评论 -
234. Palindrome Linked List
问题:234. Palindrome Linked List(从前往后读和从后往前读是一样的)参考链接:1、【LeetCode】234. Palindrome Linked List (2 solutions)2、http://www.cnblogs.com/HorribleMe/p/4878833.html第一种解法:(符合题目要求:时间复杂度O(n),空间复杂度原创 2017-04-24 11:47:46 · 334 阅读 · 0 评论 -
链表基本概念和操作 及 206. Reverse Linked List
参考书目与链接:1、基本概念,双向链表与循环链表2、链表的创建,增加、删除节点,链表的逆序、排序和销毁等3、链表基本操作(全)4、双向、循环链表操作原创 2017-04-20 10:59:24 · 491 阅读 · 0 评论 -
Leetcode 206 Reverse Linked List(C++/python)
问题:Reverse a singly linked list.单链表翻转[1,2,3,4,5,6,7,8,9,10]——[10,9,8,7,6,5,4,3,2,1]知识点整理:看图理解单链表的反转「递归」和「迭代」有哪些区别?8ms C++ Iterative and Recursive Solutions with Explanations***原创 2017-04-19 10:52:03 · 364 阅读 · 0 评论 -
148. Sort List 链表排序(C++)
问题:Sort List链表排序,从小到大。参考链接:1、148_Sort List | O(nlogn)链表排序 | Medium2、Sort List3、LeetCode 148 — Sort List(C++ Java Python)4、LeetCode(148)Sort List思想:排序算法中,自底向上的归并排序算法原创 2017-04-25 20:16:50 · 2908 阅读 · 0 评论 -
在VS C++下实现动态链表的创、输、删、插
所谓动态链表是指在程序执行过程中从无到有地建立起一个链表,既一个一个地开辟结点和输入各结点的数据,并建立起前后相连的关系。例题:#include using namespace std;#define NULL0 struct student{long num;float score;struct student *next;};int main()转载 2017-04-27 21:46:37 · 1265 阅读 · 0 评论 -
Leetcode——数论(1)
1、power of two判断是否是2的次方数?我们来观察下2的次方数的二进制写法的特点:1 2 4 8 16 ....1 10 100 1000 10000 ....那么我们很容易看出来2的次方数都只有一个1,剩下的都是0,思想1:只要每次判断最低位是否为1,然后向右原创 2017-04-04 18:51:06 · 408 阅读 · 0 评论 -
Leetcode 237/83/203 两个指针与链表节点删除
问题1:237.Delete Node in a Linked List(删除链表中某个节点)思想:用此节点的下一个节点值覆盖要删除的那个节点值,然后删除下一个节点(地址)。方法:两个指针法。C++代码:class Solution {public: void deleteNode(ListNode* node) { auto next=node-原创 2017-04-17 15:50:17 · 564 阅读 · 0 评论 -
Leetcode 160 寻找两链表的交叉节点
问题:160.Intersection of Two Linked Lists思想:解法一: 第一遍循环,找出两个链表的长度差N 第二遍循环,长链表先走N步,然后同时移动,判断是否有相同节点解法二: 链表到尾部后,跳到另一个链表的头部, 相遇点即为intersection points.解释:保持两个指针pA和pB分别在A和原创 2017-04-17 19:07:46 · 2906 阅读 · 0 评论 -
Leetcode 21. Merge Two Sorted Lists(C++)
问题:Merge Two Sorted Lists (将两个有序单链表合成一个有序的单链表)参考链接:1、[LeetCode]21.Merge Two Sorted Lists2、LeetCode 21 Merge Two Sorted Lists(合并两个已排序的链表)(Linked List)思想1:定义一个新的链表,比较两个链表,小的放进新链表中,谁小原创 2017-04-24 15:02:29 · 2265 阅读 · 0 评论