- 博客(22)
- 资源 (3)
- 收藏
- 关注
原创 leetcode-----99恢复二叉搜索树(recoverTree)
99. 恢复二叉搜索树(JAVA实现)二叉搜索树中的两个节点被错误地交换。请在不改变其结构的情况下,恢复这棵树。/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * Tr...
2020-04-19 21:04:46
285
原创 MYSQL递归查询使用总结
在做菜单权限分配时用到的SQL递归查询,总结一下:SELECT * FROM treenodes WHERE id IN (SELECT id FROM treenodes WHERE pid = 1 UNION (SELECT * FROM (SELECT id, nodename...
2019-07-08 12:38:35
690
原创 虽然简单,但你能看多深
学的C/C++,看是JAVA,不懂原理,就像个傻瓜一样。同事写了个代码如下: if (appMenuInfoDO.getMenuLevel() == Constant.Level.LEVEL_1) { //balabala } else { //balabala }说明:getMenuLevel()返回的是Integer类型,Constant.Le...
2019-07-02 17:11:05
177
原创 好好理解指针哈
#include <stdio.h>int main(void) { char *c[] = { "ENTER", "NEW", "POINT", "FIRST" }; char **cp[] = { c+3, c+2, c+1, c }; char ***cpp = cp; printf("%s\n", **++cpp);
2018-11-23 19:30:00
217
原创 全排列(回溯法,宽度优先)
int** permute(int* nums, int numsSize, int* returnSize) { int size=1,i=numsSize,count=1,cc=0; for(;i>1;i--)size*=i; *returnSize=size; int **a=(int **)calloc(size,sizeof(int *)),**b...
2018-10-12 11:54:28
547
原创 全排列 II(回溯法,宽度优先)
int cmp (const void * a, const void * b){return ( *(int*)a - *(int*)b );}int** permuteUnique(int* nums, int numsSize, int* returnSize) { int size=1,i=0,count=1,d=1; qsort(nums,numsSize,sizeo...
2018-10-12 11:50:12
310
原创 字符串相乘
char* multiply(char* num1, char* num2) { if(*num1=='0'||*num2=='0')return "0"; int len1=strlen(num1),len2=strlen(num2); char*res=(char*)malloc((len1+len2+1)*sizeof(char)); for(int i=0; i<le...
2018-10-11 01:05:26
139
原创 第一个缺失的最小正数(优化)
题目中提到线性时间和常数级的空间限制。方法1中循环中虽然出现循环,但是时间复杂度仍然是线性级别的,且空间复杂度为常数级别;方法2中采用递归思想。虽然时间复杂度满足,但是空间复杂度随着递归深入成与数组长度线性相关;方法3和方法1类似,只是方法3采用每次遇到小于数组长度n的正整数,就进行调换位置,方法1则用一个临时变量来存储。方法4是通过将正数都放后面,从第一个正数开始,将存在小于n,...
2018-09-27 21:34:03
542
原创 缺失的第一个正数(firstMissingPositive)
int firstMissingPositive(int* nums, int numsSize) { int smallest=INT_MAX; int bigest=0,i=0; for(i=0;i<numsSize;i++){ if(nums[i]<=0)continue; if(nums[i]<smallest)s...
2018-09-25 13:31:09
195
原创 数独 深度优先 递归实现 简单明了
#include <stdio.h>#include <stdlib.h>char s[9][9]= {{'8','.','.','.','.','.','.','.','.'},{'.','.','3','6','.','.','.','.','.'},{'.','7','.','.','9','.','2','.','.'},{'.','5','.','.',...
2018-09-21 21:38:57
755
原创 216. 组合总和 III C语言实现(回溯法 宽度优先)
int** combinationSum3(int num, int target, int** columnSizes, int* returnSize) { int candidates[]={1,2,3,4,5,6,7,8,9}; if(target<candidates[0])return NULL; int len=200;//满n叉树的叶子数 i...
2018-09-04 21:53:37
463
原创 leetcode 40组合总和 II C语言实现(回溯法 宽度优先)
int cmpfunc (const void * a, const void * b){return ( *(int*)a - *(int*)b );}int** combinationSum2(int* candidates, int candidatesSize, int target, int** columnSizes, int* returnSize) { if(candi...
2018-09-04 21:02:22
516
原创 leetcode 39组合总和 c语言实现(回溯法 宽度优先)
int cmpfunc (const void * a, const void * b){return ( *(int*)a - *(int*)b );}int** combinationSum(int* candidates, int candidatesSize, int target, int** columnSizes, int* returnSize) { if(candid...
2018-09-04 18:47:12
1059
3
原创 指针与数组的示例代码(帮助理解)
以下是指针与数组关系的事例代码,帮助理解#include #define DEBUG 1#if DEBUGint main(){ int a[5] = {1, 2, 3, 4, 5}; int b[2][3] = {{1, 2, 3}, {4, 5, 6}}; /*一维数组*/ printf("*a is %x\n", *a);
2017-08-11 15:35:58
351
原创 计算机网络基础(2)----协议数据单元(PDU)以及一些基本概念的区分
协议数据单元(PDU)。数据报 数据包 数据块 数据段 分组 数据包等一些基本概念的理解与区分
2017-04-08 13:41:29
34499
2
android基础教程
2016-01-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人