自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(130)
  • 资源 (4)
  • 收藏
  • 关注

原创 leetcode 77 组合(c++)

### 题目给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。示例:输入:n = 4, k = 2输出:[ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4],]### 思路就是一个回溯法,然后返回条件改成i<=n-(k-temp.size()),这样可以减少很多计算,因为temp必要...

2020-01-17 14:26:10 401

原创 leetcode 3 无重复字符的最长子串(c++)

### 题目给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的...

2020-01-15 20:09:45 208

原创 leetcode 75 颜色分类 (c++)

### 题目给定一个包含红色、白色和蓝色,一共n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、1 和 2 分别表示红色、白色和蓝色。注意:不能使用代码库中的排序函数来解决这道题。示例:输入: [2,0,2,1,1,0]输出: [0,0,1,1,2,2]进阶:一个直观的解决方案是使用计数排序的两...

2020-01-13 16:28:42 303

原创 leetcode 72 编辑路径 (c++)

### 题目给定两个单词word1 和word2,计算出将word1转换成word2 所使用的最少操作数。你可以对一个单词进行如下三种操作:插入一个字符删除一个字符替换一个字符示例1:输入: word1 = "horse", word2 = "ros"输出: 3解释:horse -> rorse (将 'h' 替换为 'r')rorse -&gt...

2020-01-06 20:14:30 193

原创 leetcode 71 简化路径 (c++)

### 题目以 Unix 风格给出一个文件的绝对路径,你需要简化它。或者换句话说,将其转换为规范路径。在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..)表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。更多信息请参阅:Linux / Unix中的绝对路径 vs 相对路径请注意,返回的规范路径必须始终以斜杠 / 开头,并且两个目...

2020-01-06 11:45:31 235

原创 leetcode 68 文本左右对齐(c++)

### 题目给定一个单词数组和一个长度maxWidth,重新排版单词,使其成为每行恰好有maxWidth个字符,且左右两端对齐的文本。你应该使用“贪心算法”来放置给定的单词;也就是说,尽可能多地往每行中放置单词。必要时可用空格' '填充,使得每行恰好有 maxWidth个字符。要求尽可能均匀分配单词间的空格数量。如果某一行单词间的空格不能均匀分配,则左侧放置的空格数要多于右...

2020-01-05 21:55:03 309

原创 leetcode 65 有效数字(c++)

### 题目验证给定的字符串是否可以解释为十进制数字。例如:"0"=>true" 0.1 "=>true"abc"=>false"1 a"=>false"2e10"=>true" -90e3"=>true" 1e"=>false"e3"=>false" 6e-1"=>true...

2020-01-05 13:30:13 177

原创 leetcode 64 最小路径和

### 题目给定一个包含非负整数的 mxn网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例:输入:[[1,3,1], [1,5,1], [4,2,1]]输出: 7解释: 因为路径 1→3→1→1→1 的总和最小。### 思路 本来想用BFS或者说Dijkstra算法,后来发...

2019-12-31 10:58:35 132 1

原创 leetcode 62 63 不同路径

### 题目一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?网格中的障碍物和空位置分别用 1 和 0 来表示。说明:m和 n 的值均不超过 100。示例1:输入:...

2019-12-30 21:57:11 115

原创 leetcode 61 旋转链表

### 题目给定一个链表,旋转链表,将链表每个节点向右移动k个位置,其中k是非负数。示例1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步:...

2019-12-30 20:14:32 104

原创 leetcode 60 第k个排列

### 题目给出集合[1,2,3,…,n],其所有元素共有n! 种排列。按大小顺序列出所有排列情况,并一一标记,当n = 3 时, 所有排列如下:"123""132""213""231""312""321"给定n 和k,返回第k个排列。说明:给定 n的范围是 [1, 9]。给定 k的范围是[1, n!]。示例1:输入: n = 3, k...

2019-12-24 11:50:58 156

原创 leetcode 56 合并区间

### 题目给出一个区间的集合,请合并所有重叠的区间。示例 1:输入: [[1,3],[2,6],[8,10],[15,18]]输出: [[1,6],[8,10],[15,18]]解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例2:输入: [[1,4],[4,5]]输出: [[1,5]]解释: 区间 [1,4] 和 [4,5] 可被视为重叠区间。...

2019-12-02 11:47:32 102

原创 leetcode 55 跳跃游戏

### 题目给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例1:输入: [2,3,1,1,4]输出: true解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。示例2:输入: [3,2,1,0,4]输出: false解释: 无论怎...

2019-11-29 16:46:00 270

原创 leetcode 54 螺旋矩阵

### 题目给定一个包含m x n个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1:输入:[[ 1, 2, 3 ],[ 4, 5, 6 ],[ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5]示例2:输入:[[1, 2, 3, 4],[5, 6, 7, 8],[9,10,11,12]]...

2019-11-29 11:25:10 75

原创 leetcode 51 N皇后

### 题目n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给定一个整数 n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个明确的n 皇后问题的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。示例:输入: 4输出: [[".Q..",// 解法 1"...Q","Q...",".....

2019-11-24 20:34:33 93

原创 leetcode 49 字母异位词分组

### 题目给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"],输出:[["ate","eat","tea"],["nat","tan"],["bat"]]说明:所有输入均为小写字母。不考虑答案输出的顺序。### 思路 ...

2019-11-19 22:14:13 110 1

原创 leetcode 48 旋转图像

### 题目给定一个 n×n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:给定 matrix =[[1,2,3],[4,5,6],[7,8,9]],原地旋转输入矩阵,使其变为:[[7,4,1],[8,5,2],[9,6,3...

2019-11-19 17:19:33 95

原创 leetcode 47 全排列Ⅱ

### 题目给定一个可包含重复数字的序列,返回所有不重复的全排列。示例:输入: [1,1,2]输出:[[1,1,2],[1,2,1],[2,1,1]]### 思路就是全排列算法了,原理比较简单,增加了一个去重。### code class Solution {public:void digui(vector<int>...

2019-11-18 21:24:54 156

原创 动态规划算法解析与实战

一、算法思想 动态规划算法的基础是最优原理,它是用来解决贪婪算法和分治算法无法解决或者无法简洁高效解决的算法,一般用于求解下列问题:(1)背包问题 (2)最短路径 等。 动态规划和贪婪算法一样,都一个问题的求解都是分为对很多问题的求解的综合,问题最终的解是多次选择的综合结果,但是贪婪算法中,每次选择最优解,之后不可撤回,但是动态规划中需要考察一系列的抉择,然...

2019-11-18 11:24:48 485

原创 全排列算法

一、数组中无重复元素 全排列的意思是对于一个给定的无重复元素的集合{a1,a2,a3,a4........an},求出它的所有的排序方式,这个问题其实可以用分治算法的思想来解决,首先可以把问题进行简化,例如:将一个字符串分为头部和尾部,其中头部是一个元素,尾部是剩下的所有元素,如下所示:a bcdb acdc abdd abc 此时上述的4个字符串已...

2019-11-15 17:31:29 207

原创 leetcode 46 全排列

### 题目给定一个没有重复数字的序列,返回其所有可能的全排列。示例:输入: [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]### 思路就是全排列算法了,原理比较简单,就是算法导论上的全排列算法,具体过程如下图所示:### code class Solut...

2019-11-15 16:04:52 66

原创 leetcode 45 跳跃游戏Ⅱ

### 题目给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。你的目标是使用最少的跳跃次数到达数组的最后一个位置。示例:输入: [2,3,1,1,4]输出: 2解释: 跳到最后一个位置的最小跳跃数是 2。从下标为 0 跳到下标为 1 的位置,跳1步,然后跳3步到达数组的最后一个位置。说明:假设你总是可以到达数组...

2019-11-14 21:43:07 99

原创 leetcode 44 通配符匹配

### 题目给定一个字符串(s) 和一个字符模式(p) ,实现一个支持'?'和'*'的通配符匹配。'?' 可以匹配任何单个字符。'*' 可以匹配任意字符串(包括空字符串)。两个字符串完全匹配才算匹配成功。说明:s可能为空,且只包含从a-z的小写字母。p可能为空,且只包含从a-z的小写字母,以及字符?和*。示例1:输入:s = "aa"p = "...

2019-11-14 11:40:40 138

原创 leetcode 43 字符串相乘

### 题目给定两个以字符串形式表示的非负整数num1和num2,返回num1和num2的乘积,它们的乘积也表示为字符串形式。示例 1:输入: num1 = "2", num2 = "3"输出: "6"示例2:输入: num1 = "123", num2 = "456"输出: "56088"说明:num1和num2的长度小于110。num1 和num2 ...

2019-11-13 21:03:18 68

原创 hihocoder 第280周德国心脏病c++

#题目:Jack在和朋友们玩德国心脏病。德国心脏病的游戏牌分为水果牌和动物牌。水果只有4种:香蕉、草莓、樱桃、柠檬,每张水果牌上会有种类不定、总数目1-5的水果;动物只有3种:猴子、大象、猪,每张动物牌上有且仅有一只动物。n名玩家绕圈就座,第一轮游戏从0号至n-1号轮流出牌。每个玩家面前最多只有一张牌,如果玩家出牌时,他的面前已经摆放了一张牌,他新出的牌将会严丝合缝地盖住旧牌。...

2019-11-12 13:57:07 775

原创 c++声明结构体与释放内存(堆和栈)

堆中声明和栈中声明:#include <iostream>class new_test{ public: int a; int b;};using namespace std;void* stack_bottom=NULL;void ptr_in_stack(new_test* ptr){ //函数调用时处于栈顶位置。 v...

2019-11-11 20:59:10 5214

原创 leetcode 42 接雨水

### 题目给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例:输入: [0,1,0,2,1,0,1,3,2,1,2,1]输出: 6### 思路 由上图可以明显看出,每个雨水都是被旁边的柱子两边持平或更高的,或者说旁边是雨水,但是旁边的雨水也一定是被柱子持平或者更高,所以也就是说要接的雨水一定首先这个位置是空的...

2019-11-11 17:18:07 99

原创 leetcode 41. 缺失的第一个正数

### 题目给定一个未排序的整数数组,找出其中没有出现的最小的正整数。示例1:输入: [1,2,0]输出: 3示例2:输入: [3,4,-1,1]输出: 2示例3:输入: [7,8,9,11,12]输出: 1说明:你的算法的时间复杂度应为O(n),并且只能使用常数级别的空间。### 思路因为是求缺失的第一个正数,也就是说求从1开始缺失的最小的整数,对于一个长度为n...

2019-11-10 21:22:35 102

原创 c++如何对vector进行去重

第一种,利用set容器的特性进行去重:#include <iostream>#include <vector>#include <set>using namespace std;int main() { vector<int>test={1,2,3,3,3,4,2,3,5,2,63,56,34,24}; set<i...

2019-11-10 14:12:14 4297

原创 leetcode 40. 组合总和 II

### 题目给定一个数组candidates和一个目标数target,找出candidates中所有可以使数字和为target的组合。candidates中的每个数字在每个组合中只能使用一次。说明:所有数字(包括目标数)都是正整数。解集不能包含重复的组合。示例1:输入: candidates =[10,1,2,7,6,1,5], target =8,所求解...

2019-11-10 13:33:05 87

原创 leetcode 39 组合总和

### 题目给定一个无重复元素的数组candidates和一个目标数target,找出candidates中所有可以使数字和为target的组合。candidates中的数字可以无限制重复被选取。说明:所有数字(包括target)都是正整数。解集不能包含重复的组合。示例1:输入: candidates = [2,3,6,7], target = 7,所求解集...

2019-11-09 21:39:13 84

原创 python读取.mat文件

可以直接读取,引用loadmat就可以了数据内容是一样的。没有变化,只是是用字典存储的,直接提出其中的data_fram就可以了。

2019-11-08 11:51:11 1515

原创 leetcode 37 解数独

### 题目编写一个程序,通过已填充的空格来解决数独问题。一个数独的解法需遵循如下规则:数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。空白格用'.'表示。将所有的'.'改成数字返回。Note:给定的数独序列只包含数字1-9和字符'.'。你可以假设给定的数独只有唯一解。给定数独...

2019-11-08 11:01:36 86

原创 Jupyter Notebook的初始路径设置

第一种方法就是直接设置快捷方式的起始位置,找到Jupyter Notebook的快捷方式。直接右键Jupyter Notebook的属性找到起始位置这个选项,修改成你想要的路径,例如:G:\pythoncode第二种方法找到Jupyter Notebook的快捷方式右键Jupyter Notebook,在属性找到目标这个选项,将目标中的字符串.....note...

2019-11-07 17:07:59 960

原创 leetcode 36. 有效的数独

### 题目判断一个9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。数独部分空格内已填入了数字,空白格用'.'表示。示例1:输入:[["5","3",".",".","7",".",".",".","."]...

2019-11-07 10:26:38 81

原创 leetcode 34 在排序数组中查找元素的第一个和最后一个位置

### 题目给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。你的算法时间复杂度必须是 O(log n) 级别。如果数组中不存在目标值,返回 [-1, -1]。示例 1:输入: nums = [5,7,7,8,8,10], target = 8输出: [3,4]示例 2:输入: nums = [5,7,7,8,8,10...

2019-11-07 10:20:45 80

原创 Android入门破解题目(EX05_01_.apk、Crackme02.apk、CrackMe-F1F2.apk)

EX05_01_.apk 通过查看java源码我们可以发现,要想让程序弹出“right++”,无论输入什么,都无法满足if判断条件(即与输入无关)。于是我们修改smali代码中的跳转条件,然后在AndroidKiller中重打包应用程序,生成的新apk就是破解成功的apk。我们在模拟器上安装运行,就会发现此时无论输入什么,应用程序都会弹出“right++”的提示信息,破解...

2019-11-06 11:11:12 891

原创 leetcode 33 搜索旋转排序数组

### 题目假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2])。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回-1。你可以假设数组中不存在重复的元素。你的算法时间复杂度必须是O(logn) 级别。示例 1:输入: nums = [4,5,6,7,0,1,2...

2019-11-05 19:37:11 82

原创 leetcode 32 最长有效括号

### 题目给定一个只包含 '('和 ')'的字符串,找出最长的包含有效括号的子串的长度。示例1:输入: "(()"输出: 2解释: 最长有效括号子串为 "()"示例 2:输入: ")()())"输出: 4解释: 最长有效括号子串为 "()()"### 思路题目说了是子串,所以一定要连续的,比如()(()就的最长合理子串就是2,两对括号之间被(隔开了.所以说找到一对合理...

2019-11-05 11:01:56 69

原创 利用正则表达式提取txt文本中的网址

批量读取某一个文件夹下的txt文件,并且找出其中的网址。 import reimport ospath=r'G:\python code\zhengze'#这个文件目录下存储需要提取的txt文件file_path=[]for filename in os.listdir(path):#获取path下所有文件的路径...

2019-11-04 11:27:50 4028

C++面试题集锦.docx

c++面试会问的一些技术问题,包括c++基础,操作系统,计算机网络。

2019-10-21

高阶累积量 matlab

计算信号的高阶累积量,带注释,包括高阶矩,亲测可用,代码是matlab的。

2019-01-14

空空如也

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

TA关注的人

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