剑指Offer
WMXNLFD
努力成瘾的人
个人博客:https://www.cnblogs.com/wmxnlfd/
展开
-
《剑指Offer》C++实现-Week1
1.找出数组中重复的数字给定一个长度为 n 的整数数组 nums,数组中所有的数字都在 0∼n−1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。注意:如果某些数字不在 0∼n−1 的范围内,或数组中不包含重复数字,则返回 -1;样例给定 nums = [2, 3, 5, 4, 3, 2, 6, 7]。返回 2...原创 2019-08-31 09:40:25 · 144 阅读 · 0 评论 -
《剑指Offer》C++实现-Week2
24. 机器人的运动范围地上有一个 m 行和 n 列的方格,横纵坐标范围分别是 0∼m−1 和 0∼n−1。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格。但是不能进入行坐标和列坐标的数位之和大于 k 的格子。请问该机器人能够达到多少个格子?样例1输入:k=7, m=4, n=5输出:20样例2输入:k=18, m=40, n=40输出:148...原创 2019-09-07 16:05:25 · 169 阅读 · 0 评论 -
《剑指Offer》C++实现-Week3
35. 反转链表定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。样例输入:1->2->3->4->5->NULL输出:5->4->3->2->1->NULL/** * Definition for singly-linked list. * struct ListNode { * int v...原创 2019-09-10 19:58:21 · 107 阅读 · 0 评论 -
《剑指Offer》C++实现-Week4
46. 二叉搜索树的后序遍历序列输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。样例输入:[4, 8, 6, 12, 16, 14, 10]输出:trueclass Solution {public: vector<int> seq; bool ...原创 2019-09-13 08:19:54 · 148 阅读 · 0 评论 -
《剑指Offer》C++实现-Week5
57. 数字序列中某一位的数字数字以0123456789101112131415…的格式序列化到一个字符序列中。在这个序列中,第5位(从0开始计数)是5,第13位是1,第19位是4,等等。请写一个函数求任意位对应的数字。样例输入:13输出:1class Solution {public: /* 1.确定是几位数 n - 10 - 90 * 2 - 900 * 3 -...原创 2019-09-15 08:06:52 · 110 阅读 · 0 评论 -
《剑指Offer》C++实现-Week6
68. 0到n-1中缺失的数字一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0到n-1之内。在范围0到n-1的n个数字中有且只有一个数字不在该数组中,请找出这个数字。样例输入:[0,1,2,4]输出:3class Solution {public: int getMissingNumber(vector<int>& nums) ...原创 2019-09-18 20:44:53 · 105 阅读 · 0 评论 -
《剑指Offer》C++实现-Week7
79. 滑动窗口的最大值给定一个数组和滑动窗口的大小,请找出所有滑动窗口里的最大值。例如,如果输入数组[2, 3, 4, 2, 6, 2, 5, 1]及滑动窗口的大小3,那么一共存在6个滑动窗口,它们的最大值分别为[4, 4, 6, 6, 6, 5]。注意:数据保证k大于0,且k小于等于数组长度。样例输入:[2, 3, 4, 2, 6, 2, 5, 1] , k=3输出: [4, 4...原创 2019-09-18 20:54:23 · 168 阅读 · 0 评论