剑指offer练习
nullwh
这个作者很懒,什么都没留下…
展开
-
剑指offer67~76题
滑动窗口的最大值原创 2020-09-25 16:34:12 · 278 阅读 · 0 评论 -
剑指offer56~66题
0到n-1中缺失的数字原创 2020-09-24 22:46:45 · 122 阅读 · 0 评论 -
剑指offer45~55题
数字序列中某一位的数字原创 2020-09-23 22:53:54 · 98 阅读 · 0 评论 -
剑指offer34~44题
二叉搜索树的后序遍历序列此题的重点是考察后序遍历的操作,左右根,也就是将最后一个节点作为分割元素,将分割为左子树、右子树和根节点,再递归判断左右子树是否满足后序遍历的特性,不满足则返回false。递归出口有两个,一个是当序列的左侧位置大于等于右侧位置是返回true,解释下此处为什么会存在大于的情况,以左子树为例,可能会存在某一点没有左子树,而我们对左子树的区间判断是s到l-1,此处的l就是s。每次递归都会干掉最后一个元素。class Solution {public: vector<i.原创 2020-09-22 22:40:03 · 99 阅读 · 0 评论 -
剑指offer23~33题
反转链表非常直观的动图展示/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* reverseList(ListNode* head) { List原创 2020-09-21 17:07:21 · 109 阅读 · 0 评论 -
剑指offer12~22题
机器人的运动范围class Solution {public: //计算单个数字的各位之和 int get_single_sum(int x) { int s = 0; while (x) { s += x %10; x /= 10; } return s; } //计算点的各位之和 int get_sum(pair<int, int> p)原创 2020-09-20 20:19:38 · 252 阅读 · 0 评论 -
剑指offer 1~11题
连续子数组的最大和class Solution {public: int maxSubArray(vector<int>& nums) { int res = INT_MIN; int last = 0; for(int i = 0; i < nums.size(); i++) { last = nums[i] + max(last,0); res = max(res, la原创 2020-09-18 12:38:13 · 137 阅读 · 0 评论