- 博客(17)
- 收藏
- 关注
原创 力扣969.煎饼排序
class Solution {public: vector<int> pancakeSort(vector<int>& A) { vector<int> res; int k = 0, l = 0; while (l < A.size()) { auto max = max_element(A.begin(), A.end() - l);//重排
2021-01-30 21:18:47 115
原创 二叉树层序遍历
树的层次遍历可以使用广度优先搜索实现。从根节点开始搜索,每次遍历同一层的全部节点,使用一个列表存储该层的节点值。class Solution {public: vector<vector<int>> res; vector<vector<int>> levelOrderBottom(TreeNode* root) { if(!root){ return res; } q
2021-01-30 21:10:55 73
原创 94.二叉树的中序遍历
class Solution {public: vector<int> res; vector<int> inorderTraversal(TreeNode* root) { if(root) { inorderTraversal(root->left); //左 res.push_back(root->val); //根 inorderTraversal(root-
2021-01-23 23:40:55 73
原创 70.爬楼梯
class Solution {public: int climbStairs(int n) { int p = 0, q = 0, r = 1; for (int i = 1; i <= n; ++i) { p = q; q = r; r = p + q; } return r; }};
2021-01-23 23:10:28 62
原创 力扣989.数组形式的整数加法
class Solution {public: vector<int> addToArrayForm(vector<int>& A, int K) { vector<int> res; int remain = 0;//用来存余数 for(int i = A.size() - 1; i >= 0; i --) { int num = A[i]; //用最
2021-01-22 18:33:49 83
原创 力扣53.最大子序和
class Solution {public: int maxSubArray(vector<int>& nums) { if (nums.size() == 0) return 0; int dp[nums.size()]; // 引入dp用来记录到达每个位置时子集数字之和 dp[0] = nums[0]; int result = dp[0]; for (int i = 1; i < nu
2021-01-16 20:06:02 59
原创 力扣64.最小路径和
class Solution {public: int maxSubArray(vector<int>& nums) { if (nums.size() == 0) return 0; int dp[nums.size()]; // 引入dp用来记录到达每个位置时子集数字之和 dp[0] = nums[0]; int result = dp[0]; for (int i = 1; i < nu
2021-01-16 19:47:15 62
原创 力扣1018.5整除的二进制前缀
bool* prefixesDivBy5(int* A, int ASize, int* returnSize) { if(A == NULL) return; int i; *returnSize = ASize; bool* answer = malloc(sizeof(bool) * ASize); int prefix = 0; //对A中子集遍历,看书否能够整除5 for (i = 0; i < ASize; i++) {
2021-01-14 17:44:20 59
原创 力扣189.旋转数组
class Solution {public: int fib(int n) { //遇到F(0),F(1)直接输出0和1 if (n < 2) { return n; } int p = 0, q = 0, r = 1; //循环F(n) = F(n - 1) + F(n - 2)一直加出F(n) for (int i = 2; i <= n; ++i) {
2021-01-04 18:41:29 64
原创 力扣605.种花问题
代码和解析:bool canPlaceFlowers(int* flowerbed, int flowerbedSize, int n){ //首先排除特殊情况 if (flowerbedSize == 0) return false; if (n == 0) return true; //引入cnt用来计数 int cnt = 0; /*对数组中的每一个数以及左右两数进行判断,若均为0(i在两端的情况已经排除),则可以种植,计数加一, 并且i移
2021-01-01 22:36:03 211
原创 力扣435.无重叠区间
今天学到了多维数组排序代码写法int cmp(int** a, int** b) { return (*a)[1] - (*b)[1];}int eraseOverlapIntervals(int** intervals, int intervalsSize, int* intervalsColSize) { //首先排除数组为空的特殊情况 if (intervalsSize == 0) { return 0; } //在内部将区间左右端排序
2020-12-31 10:38:30 129
原创 力扣1046.最后一块石头的重量
思路和代码表达都写在下面代码里了int cmp(int *a, int *b){ return *a - *b;}//在石头数量大于2时,每一轮操作前对数组进行排序int lastStoneWeight(int* stones, int stonesSize){ while(stonesSize > 2) { qsort(stones, stonesSize, sizeof(int), cmp);//比较最后两个数//若最后一个数较大,则让倒数第二
2020-12-30 17:20:50 67
原创 力扣330.按要求补齐数组
痛苦面具 看了解析才做出来int minPatches(int* nums, int numsSize, int n) { int cnt=0; //引入cnt用来计数 long long x; //看了解析,用long long防止数值过大 int index=0; //引入下标 //主要判断方式:若[1,x)被覆盖,则区间内所有数加x都被覆盖,即[1,2x)被覆盖 for( x=1;
2020-12-29 18:13:27 100
原创 力扣976.三角形的最大周长
int cmp(int* a, int* b) { return *a - *b;}int largestPerimeter(int *A, int ASize) { qsort(A, ASize, sizeof(int), cmp); //将三角形边长排好序 for (int i = ASize - 1; i >= 2; i--) { if (A[i - 2] + A[i - 1] > A[i]) { //从周长最
2020-12-26 10:50:01 97
原创 力扣455.分发饼干
今天每日一题终于简单了一次…//先把两个数组排好序int cmp(int* a, int* b) { return *a - *b;}int findContentChildren(int* g, int gSize, int* s, int sSize){ qsort(g, gSize, sizeof(int), cmp); qsort(s, sSize, sizeof(int), cmp); int p1=0,p2=0; int cnt=0;
2020-12-25 12:47:40 102
原创 力扣387.字符串中第一个唯一字符
int firstUniqChar(char * s){ if(*s == NULL) return -1; if(len == 1) return 0;//排除特殊情况 int i=0,j=0; //以索引遍历每一个数,当查到有数字无重复时返回其索引,若对照都存在重复返回-1, for(i=0;i<len;i++) { for(j=0;j<len;j++) { i
2020-12-24 22:36:44 70
原创 力扣75.颜色分类C语言双指针
刚学了排序,来一道排序题void swap(int *a, int *b) { int t = *a; *a = *b, *b = t;}//定义一个函数来交换指针指向的两个值void sortColors(int *nums, int numsSize) { //划分三个区间,p0之前只有0,p2之后只有2 int p0 = 0, p2 = numsSize - 1; //p0和p2分别置于首尾两端 for (int i = 0; i <= .
2020-12-24 21:49:09 129
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人