判断数独是否合法

2018-01-13
阅读 3 分钟
4.7k
什么是数独Each row must have the numbers 1-9 occuring just once.Each column must have the numbers 1-9 occuring just once. And the numbers 1-9 must occur just once in each of the 9 sub-boxes of the grid.

螺旋矩阵

2018-01-13
阅读 2 分钟
2.8k
给定如下矩阵:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]应返回 [1,2,3,6,9,8,7,4,5]。

矩阵的之字型遍历

2018-01-13
阅读 2 分钟
2.6k
对于如下矩阵:[ [1, 2, 3, 4], [5, 6, 7, 8], [9,10, 11, 12]]返回 [1, 2, 5, 9, 6, 3, 4, 7, 10, 11, 8, 12]

矩阵归零

2018-01-12
阅读 2 分钟
3.5k
思路: 如果使用额外的空间的话,需要两个一维数组,分别标记哪一行哪一列有0,然后把这些行和列都清0即可。这样空间复杂度为O(m+n); 但是题目要求在原矩阵上完成操作,所以空间复杂度应该为O(1);于是把第一行和第一列作为标记。 首先,先判断第一行第一列是否含有0,并用两个bool变量记录起来。然后,遍历其他行和列,...

旋转图像

2018-01-12
阅读 2 分钟
2.8k
思路: 思路一:先将矩阵转置,然后每一列的元素反转;(可画图理解) 思路二:找出每个元素旋转后的矩阵位置,即a[i] [j]==>a[j] [n-1-i]。这种方法很容易在for循环的条件设置中出错,由于每次转换四个数a[n-1-j] [i],a[i] [j],a[j] [n-1-i],a[n-1-i] [n-1-j],对于每一次循环行数会从i,n-1-i收缩,所以i只要循环n/...

搜索二维矩阵 II

2018-01-12
阅读 2 分钟
2.4k
题目: 写出一个高效的算法来搜索m×n矩阵中的值,返回这个值出现的次数。这个矩阵具有以下特性: 每行中的整数从左到右是排序的。 每一列的整数从上到下是排序的。 在每一行或每一列中没有重复的整数。 样例: 考虑下列矩阵:[ [1, 3, 5, 7],[2, 4, 7, 8],[3, 5, 9, 10]]给出target = 3,返回 2 思路: 和搜索矩阵I类似...

Android签名机制及原理

2018-01-10
阅读 2 分钟
7.4k
Android系统在安装APK的时候,首先会检验APK的签名,如果发现签名文件不存在或者校验签名失败,则会拒绝安装,所以应用程序在发布之前一定要进行签名。给APK签名可以带来以下好处: 应用程序升级 如果想无缝升级一个应用,Android系统要求应用程序的新版本与老版本具有相同的签名与包名。若包名相同而签名不同,系统会拒...

uid(用户)&&gid(组)&& pid(进程)

2018-01-10
阅读 3 分钟
4.8k
在 Linux 中,一个用户UID标示一个给定用户。Linux系统中的用户(UID)分为3类,即普通用户、根用户、系统用户。 普通用户是指所有使用Linux系统的真实用户,这类用户可以使用用户名及密码登录系统。Linux有着极为详细的权限设置,所以一般来说普通用户只能在其家目录、系统临时目录或其他经过授权的目录中操作,以及操作...

SELinux与SEAndroid

2018-01-10
阅读 2 分钟
3.8k
SELinux则是由美国NSA(国安局)和一些公司(RedHat、Tresys)设计的一个针对Linux的安全加强系统。SEAndroid是Google在Android 4.4上正式推出的一套以SELinux为基础于核心的系统安全机制。

Android Intent

2018-01-10
阅读 4 分钟
1.6k
用于被启动组件之间的信息交换(例如两个Activity可以把交换的数据封装成Bundle对象,然后使用Intent来携带Bundle对象.)

最大子数组 II

2018-01-09
阅读 2 分钟
2.8k
给定一个整数数组,找出两个不重叠子数组使得它们的和最大。每个子数组的数字在数组中的位置应该是连续的。返回最大的和。注意:子数组最少包含一个数

最大子数组

2018-01-09
阅读 1 分钟
1.2k
思路: 采用动态规划的思想:维持两个变量,一个是目前最大和sum,一个是全局最大和sum_max.递推式是sum=max(sum+nums[i],nums[i])。

搜索二维矩阵

2018-01-09
阅读 2 分钟
1.4k
题目: 写出一个高效的算法来搜索 m × n矩阵中的值。这个矩阵具有以下特性: 每行中的整数从左到右是排序的。 每行的第一个数大于上一行的最后一个整数。 给定一个值,搜索矩阵,判断该值是否在矩阵中。 样例: 考虑下列矩阵:[[1, 3, 5, 7],[10, 11, 16, 20],[23, 30, 34, 50]]给出 target = 3,返回 true 思路: 给定...

直方图最大矩形覆盖

2018-01-09
阅读 2 分钟
2.8k
Given n non-negative integers representing the histogram's bar height where the width of each bar is 1, find the area of largest rectangle in the histogram.Above is a histogram where width of each bar is 1, given height = [2,1,5,6,2,3].The largest rectangle is shown in the shaded area, which has ...

二叉树中的最大路径和

2018-01-07
阅读 2 分钟
4.2k
思路: 指定某个节点为根时,一条经过root的最大路径,这条路径可能是: 1) 左边某条路径 + root + 右边某条路径(左右子树的路径加上当前节点) 2) 左边某条路径 + root (左子树的路径加上当前节点) 3) root + 右边某条路径(右子树的路径加上当前节点) 4) root然而这四种情况只是用来计算以当前节点根的最大路径,如果当...

编辑距离

2018-01-07
阅读 2 分钟
1.4k
题目: 给出两个单词word1和word2,计算出将word1 转换为word2的最少操作次数。你总共三种操作方法: 插入一个字符 删除一个字符 替换一个字符 样例: 给出 work1="mart" 和 work2="karma"返回 3 思路: 我们需要维护一个二维的数组dp,其中dp[i] [j]表示从word1的前i个字符转换到word2的前j个字符所需要的步骤。那我们...

解码方法

2018-01-07
阅读 2 分钟
1.7k
思路: 所以:递推式类似于爬楼梯问题: res[i] = res[i-1]+res[i-2] 分析:s[i-1]单独解释的时候,前面可以有res[i-1]种解释方法,如果s[i-1]和s[i-2]共同解释的时候,前面就有res[i-2]种解释方法。但是需要加更多的限制条件:1.s[i-1]不能为0,如果是0的话,res[i]就只可能是res[i-2],且满足s[i-2]是1或者2;2.在s[i-...

不同的二叉查找数

2018-01-07
阅读 1 分钟
2.3k
思路: 二叉搜索树的一个性质:左边的数都比根小,右边的数都比根大。由于二叉树的节点是从1到n,所以我们如果确定根为i,则根左边的数是1到i-1,根右边的数是i+1到n。选取一个结点为根,就把结点切成左右子树,以这个结点为根的可行二叉树数量就是左右子树可行二叉树数量的乘积。所以总的数量是将以所有结点为根的可行...

打劫房屋

2018-01-07
阅读 1 分钟
2.2k
假设你是一个专业的窃贼,准备沿着一条街打劫房屋。每个房子都存放着特定金额的钱。你面临的唯一约束条件是:相邻的房子装着相互联系的防盗系统,且 当相邻的两个房子同一天被打劫时,该系统会自动报警。给定一个非负整数列表,表示每个房子中存放的钱, 算一算,如果今晚去打劫,在不触动报警装置的情况下,你最多可以...

单词拆分I

2018-01-07
阅读 2 分钟
3.3k
给出s="lintcode"dict=["lint","code"]返回 true 因为"lintcode"可以被空格切分成"lint code"

爬楼梯

2018-01-07
阅读 1 分钟
1.8k
思路: 因为一次只能爬一步或者两步。所以第n步有两种方法:第一种是从n-1步的地方爬到顶部;另一种是从n-2步的地方直接爬到顶部。a[i]表示到达第i步有多少种不同的方法,a[i] = a[i-1]+a[i-2]。本题类似于斐波那契数列(递归的方法,但是太耗时间)。

最接近零的子数组和

2018-01-07
阅读 2 分钟
2.4k
思路: 第一遍:遍历给定数组,将0-i元素的和sum以及i的下标存储到pair<int,int>结构中。 第二遍:遍历pair元素,按照sum排序,计算相邻sum的差值。(理由:sum的差值[绝对值]越小,表明之间的元素和越接近0)假设[0-2]和[0-4]的sum值的差值最小,那么结果为index[3,4]。