LeetCode | 19. 删除链表的倒数第N个结点
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/remove-nth-node-from-end-of-list/
题解and思路1234567891011121314151617181920212223242526272829303132class Solution {public: ListNode* removeNthFromEnd(ListNode* head, int n) { if (head == nullptr) return head; //如果为空链表,直接返回头节点 //新建vector,遍历链表全部存入 vector<int> vec; ListNode* node = head; while (node != nullptr ...
LeetCode | 61. 旋转链表
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/rotate-list/
题解123456789101112131415161718192021222324class Solution {public: ListNode* rotateRight(ListNode* head, int k) { if (head == nullptr) return head; vector<int> vec; ListNode* node = head; while (node != nullptr) { vec.push_back(node->val); node = node->next; ...
LeetCode | 104. 二叉树的最大深度
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/maximum-depth-of-binary-tree/
题解12345678//一个最基础的DFS,没什么好讲的捏class Solution {public: int maxDepth(TreeNode* root) { if (root == nullptr) return 0; return max(maxDepth(root->left), maxDepth(root->right)) + 1; }};
LeetCode | 7. 整数反转
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/reverse-integer/
题解and思路12345678910111213141516171819202122class Solution {public: int reverse(int x) { if (x == 0) return 0; bool isPositive = true; //用于判断是否是正数 if (x < 0) { x = abs(x); isPositive = false; } while (x % 10 == 0) { //去除末尾的0 x = x / 10; & ...
LeetCode | 5. 最长回文子串
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/longest-palindromic-substring/
题解and思路1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374class Solution {public: string longestPalindrome(string s) { //定义两个数组,用于存放在该位置时进行中心扩散能得到的最大的符合回文子串的长度 int arr1[s.length()]; int arr2[s.length()]; ...
LeetCode | 9. 回文数
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/palindrome-number/
题解and思路1234567891011121314151617class Solution {public: bool isPalindrome(int x) { string xs = to_string(x); //类型转换,把整形转化成字符串 int len = xs.length(); int left = 0, right = len - 1; //双指针向中间毕竟 while (left <= right) { if (xs[left] == xs[right]) { left++; ...
LeetCode | 142. 环形链表 II
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/linked-list-cycle-ii/
题解12345678910111213141516class Solution {public: ListNode *detectCycle(ListNode *head) { unordered_set<ListNode *> visited; while (head != nullptr) { if (visited.count(head)) { return head; } visited.insert(head); ...
LeetCode | 148. 排序链表
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/sort-list/
题解12345678910111213141516171819class Solution {public: ListNode* sortList(ListNode* head) { if (head == nullptr) return head; vector<int> vec; ListNode* node = head; while (node != nullptr) { vec.push_back(node->val); node = node->next; } sort(vec.be ...
LeetCode | 155. 最小栈
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/min-stack/
题解12345678910111213141516171819202122232425262728class MinStack { stack<int> stackA; stack<int> stackB;public: MinStack() { } void push(int val) { stackA.push(val); if (stackB.empty()) stackB.push(val); else stackB.push(min(stackB.top(), val)); } ...
LeetCode | 160. 相交链表
我的Bilibili频道:香芋派Taro我的个人博客:taropie0224.github.io(阅读体验更佳)我的公众号:香芋派的烘焙坊我的音频技术交流群:1136403177我的个人微信:JazzyTaroPie
https://leetcode.cn/problems/intersection-of-two-linked-lists/
题解and思路123456789101112131415161718192021class Solution {public: ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) { unordered_set<ListNode *> visited; //创建哈希表存储以访问的节点 ListNode *temp = headA; //首先遍历完链表A,把所有的节点都存入哈希表中 while (temp != nullptr) { visite ...