自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 剑指 Offer 42. 连续子数组的最大和

输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。示例1:输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。1.即时处理class Solution {public: int maxSubArray(vector<int>& nums) {//读入序列,并不断更新最值,如果子序列小于0了,那么对于后面的序列没有增量

2021-03-17 10:48:00 49

原创 剑指 Offer 47. 礼物的最大价值

在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物?示例 1:输入: [ [1,3,1], [1,5,1], [4,2,1]]输出: 12解释: 路径 1→3→5→2→1 可以拿到最多价值的礼物提示:0 < grid.length <= 2000 < grid[0].

2021-03-16 15:40:29 52

原创 剑指 Offer 18. 删除链表的节点

给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。**注意:**此题对比原题有改动示例 1:输入: head = [4,5,1,9], val = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.示例 2:输入: head = [4,5,1,9], val = 1输出: [4,5,9]解释: 给定你链表中值为 1&nb

2021-01-28 16:48:18 59

原创 剑指 Offer 54. 二叉搜索树的第k大节点

示例 1:输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2输出: 4示例 2:输入: root = [5,3,6,2,4,null,null,1], k = 3 5 / \ 3 6 / \ 2 4 / 1输出: 4限制:1 ≤ k ≤ 二叉搜索树元素个数1.利用二叉搜索树右子树大于根节点,左子树小于根节点,所以中序遍历的结果递增有序的特性①递归式写法/

2021-01-07 12:00:28 90

原创 剑指 Offer 15. 二进制中1的个数

请实现一个函数,输入一个整数(以二进制串形式),输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。示例 1:输入:00000000000000000000000000001011输出:3解释:输入的二进制串 00000000000000000000000000001011 中,共有三位为 '1'。示例 2:输入:00000000000000000000000010000000输出:1解释:

2021-01-06 15:32:29 39

原创 剑指 Offer 09. 用两个栈实现队列

用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )示例 1:输入:["CQueue","appendTail","deleteHead","deleteHead"][[],[3],[],[]]输出:[null,null,3,-1]示例 2:输入:["CQueue","deleteHead","appendTai

2021-01-06 15:31:37 45

原创 剑指 Offer 25. 合并两个排序的链表

输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。示例1:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4限制:0 <= 链表长度 <= 10001.分别遍历两个链表,把指向小的在继续遍历/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode

2021-01-05 14:19:59 35

原创 剑指 Offer 10- I. 斐波那契数列

写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。示例 1:输入:n = 2输出:1示例 2:输入:n = 5输出:5提示:0 &l

2021-01-05 11:39:12 56

原创 关于ansys19.0安装问题

1.Server ANSLIC_ADMIN Utility 中的点击Launch the ANSYS License Management Center,出现报错要求盘符:\ANSYS Inc\Shared Files\Licensing\winx64\ansyslmcenter 需要管理员权限,实际上需要更改的是Server ANSLIC_ADMIN Utility本身的管理员权限2.运行软件组件发现报错 ansys Could not connect to any license server,设

2021-01-04 16:58:15 4199 1

原创 剑指 Offer 50. 第一个只出现一次的字符

在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。示例:s = "abaccdeff"返回 "b"s = "" 返回 " "限制:0 <= s 的长度 <= 500001.数组哈希,两次循环法class Solution {public: char firstUniqChar(string s) { int str[26] = {0}, first[26] = {0}; for(int i

2021-01-04 13:59:12 47

原创 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。示例:输入:nums = [1,2,3,4]输出:[1,3,2,4] 注:[3,1,2,4] 也是正确的答案之一。提示:1 <= nums.length <= 500001 <= nums[i] <= 100001.列两个vector再合并class Solution {public: vector<int> exchang

2021-01-04 13:58:35 34

原创 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。示例:输入:nums = [1,2,3,4]输出:[1,3,2,4] 注:[3,1,2,4] 也是正确的答案之一。提示:1 <= nums.length <= 500001 <= nums[i] <= 100001.列两个vector再合并class Solution {public: vector<int> exchang

2021-01-04 11:15:34 36

原创 86. 分隔链表

给你一个链表和一个特定值 x ,请你对链表进行分隔,使得所有小于 x 的节点都出现在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。示例:输入:head = 1->4->3->2->5->2, x = 3输出:1->2->2->4->3->51.双链表法/** * Definition for singly-linked list. * struct ListNode { * int val;

2021-01-03 11:06:13 49

原创 剑指 Offer 22. 链表中倒数第k个节点

输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。示例:给定一个链表: 1->2->3->4->5, 和 k = 2.返回链表 4->5.1.两次遍历法/** * Definition for singly-linked list. * struct ListNode { *

2021-01-03 11:05:28 35

原创 剑指 Offer 57. 和为s的两个数字

输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。示例 1:输入:nums = [2,7,11,15], target = 9输出:[2,7] 或者 [7,2]示例 2:输入:nums = [10,26,30,31,47,60], target = 40输出:[10,30] 或者 [30,10]限制:1 <= nums.length <= 10^51 <= nums[i] <=

2021-01-02 14:16:33 54

原创 剑指 Offer 39. 数组中出现次数超过一半的数字

数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]输出: 2限制:1 <= 数组长度 <= 500001.mapclass Solution {public: int majorityElement(vector<int>& nums) { map<int, int> m;

2021-01-02 10:57:54 35

原创 剑指 Offer 03. 数组中重复的数字

找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3限制:2 <= n <= 100000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/shu-zu-zhong-zhong-fu-de-shu-

2021-01-01 21:23:37 36

原创 剑指 Offer 55 - I. 二叉树的深度

输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。例如:给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7返回它的最大深度 3 。提示:节点总数 <= 10000/** * Definition for a binary tree node. * struct TreeNode { * int v

2020-12-31 16:24:26 47

原创 剑指 Offer 56 - II. 数组中数字出现的次数 II

在一个数组 nums 中除一个数字只出现一次之外,其他数字都出现了三次。请找出那个只出现一次的数字。示例 1:输入:nums = [3,4,3,3]输出:4示例 2:输入:nums = [9,1,7,9,7,9,7]输出:1限制:1 <= nums.length <= 100001 <= nums[i] < 2^31来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/shu-zu-zhong-shu-zi-c

2020-12-30 19:54:46 51

原创 剑指 Offer 64. 求1+2+…+n

求 1+2+…+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。示例 1:输入: n = 3输出: 6示例 2:输入: n = 9输出: 45来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/qiu-12n-lcof著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。递归就行class Solution {public:

2020-12-30 17:01:51 55

原创 剑指 Offer 27. 二叉树的镜像

请完成一个函数,输入一个二叉树,该函数输出它的镜像。例如输入: 4/     2     7 / \   / 1   3 6   9镜像输出: 4/     7     2 / \   / 9   6 3   1示例 1:输入:root = [4,2,7,1,3,6,9]输出:[4,7,2,9,6,3,1]

2020-12-30 16:46:17 40

原创 剑指 Offer 24. 反转链表

反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/reverse-linked-list著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。迭代:/** * Definition for

2020-12-29 13:49:54 30

原创 剑指 Offer 06. 从尾到头打印链表

输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。示例 1:输入:head = [1,3,2]输出:[2,3,1]限制:0 <= 链表长度 <= 10000/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {}//初始化当前结

2020-12-28 21:35:55 33

原创 Word丢失文件的几种找回方法

1.打开自动弹窗的未保存文件直接恢复2.键入文件名搜索相关的所有文件,查看是否有自动备份/临时文件,不一定能精确查找到,查询.doc3.寻找"临时"文件:搜索临时/备份文件关键词①$.tmp②.tmp③.wbk(备份)④.asd(自动恢复文件)⑤~注意,在.前加会大范围寻找:如~.,.ads,.(全找),*.tmp,*wbk4.强制Word尝试恢复文件 选中“自动保存时间间隔”选项后(在“工具”菜单上,单击“选项”,然后单击“保存”选项卡),Word 会创建一个包含对文档的最新更改的临时“自动恢复

2020-12-27 22:38:05 1121

原创 1077A Kuchiguse

For each test case, print in one line the kuchiguse of the character, i.e., the longest common suffix of all N lines. If there is no such suffix, write nai.Sample Input 1:3Itai nyan~Ninjin wa iyadanyan~uhhh nyan~Sample Output 1:nyan~Sample Input

2020-12-27 20:02:27 51

原创 剑指 Offer 05. 替换空格

请实现一个函数,把字符串 s 中的每个空格替换成"%20"。示例 1:输入:s = "We are happy."输出:"We%20are%20happy."限制:0 <= s 的长度 <= 10000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/ti-huan-kong-ge-lcof著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。class Solution {public: strin

2020-12-27 13:15:04 74

原创 剑指 Offer 17. 打印从1到最大的n位数

输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。示例 1:输入: n = 1输出: [1,2,3,4,5,6,7,8,9]说明:用返回一个整数列表来代替打印n 为正整数class Solution {//返回一个vector序列就行public: vector<int> printNumbers(int n) { vector<int> res;

2020-12-27 11:23:54 62

转载 剑指 Offer 58 - II. 左旋转字符串

剑指 Offer 58 - II. 左旋转字符串字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab".示例 1:输入: s = "abcdefg", k = 2输出: "cdefgab"示例 2:输入: s = "lrloseumgh", k = 6输出: "umghlrlose"来源:力扣(LeetCode)链接:https://leet

2020-12-27 11:23:25 48

原创 leetcode 461e

leetcode 461e两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给出两个整数 x 和 y,计算它们之间的汉明距离。注意:0 ≤ x, y < 231.示例:输入: x = 1, y = 4输出: 2解释:1 (0 0 0 1)4 (0 1 0 0) ↑ ↑上面的箭头指出了对应二进制位不同的位置。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/hamming-d

2020-12-27 11:22:47 53

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除