Serenity

热爱可抵岁月漫长

一个热爱技术、喜欢折腾的开发者。 专注于前端开发,偶尔写写后端。 记录生活,分享技术,探索未知。

点击任意处进入哦~
加载中
输入关键词开始搜索
leetcode48. 旋转图像

leetcode48. 旋转图像

思路class Solution {public: void rotate(vector<vector<int>>& matrix) { int n=matrix.size(); for(int i=0;i<n;i++){

图形 中等
2月 Serenity
leetcode47. 全排列 II

leetcode47. 全排列 II

思路对比46题,这里有重复数字,[1,2,2]中[1,2,2]和[1,2,2]是相同的,可以将数组排序,然后遇到相同数字时,判断上一个数字是否已经用过,如果用过了,那么就跳过这次循环(相当于去重)。class Solution {public: vector<vector<int&

dfs 中等
2月 Serenity
leetcode46. 全排列

leetcode46. 全排列

class Solution {public: bool flag[10]; vector<vector<int>> ans; vector<int>path; void dfs(vector<int>&nums,int

dfs 中等
2月 Serenity
leetcode41. 缺失的第一个正数

leetcode41. 缺失的第一个正数

思路nums中有n个数,若nums中依次为1-n,则缺失的数为n+1,若其中有重复或者负数,那么这个缺失的数必在1-n中。则可以用nums这个数组作为哈希地址,由于存在重复数字,我们可以每次取nums[i]的绝对值,然后将其对应的nums的角标位置变成负数,最后遍历nums,找到第一个正数,其下标则

哈希 困难
1月 Serenity
leetcode40. 组合总和 II

leetcode40. 组合总和 II

思路由于这里每个元素不能重复,所以每次dfs()时要+1,并且为了去重,可以先将元素排序class Solution { public: vector<vector<int>> ans; vector<int>path; vector&lt

dfs 中等
1月 Serenity
leetcode39. 组合总和

leetcode39. 组合总和

思路如下:1、遍历数组中的每一个数字。2、递归枚举每一个数字可以选多少次,递归过程中维护一个target变量。如果当前数字小于等于target,我们就将其加入我们的路径数组path中,相应的target减去当前数字的值。也就是说,每选一个分支,就减去所选分支的值。3、当target == 0时,表示

dfs 中等
1月 Serenity