
ACM-数组
liuyu1942
这个作者很懒,什么都没留下…
展开
-
leetcode Maximum Subarray
题目:https://oj.leetcode.com/problems/maximum-subarray/题意:找出和最大的最小子串思路:子串是说连续的一个substring,而子序列则可以是不连续的,但是顺序要对1.用sum记目前暂时能得到的和,如果发现再加A[i]之前sum就小于0了,那么肯定对于后面要取最大和没有一点帮助了,就不要了,直接把sum置0,然后不管有没有用,用sum加原创 2015-02-22 15:28:29 · 330 阅读 · 0 评论 -
leetcode Rotate Image
题目:https://oj.leetcode.com/problems/rotate-image/题意:顺时针旋转一个2维数组思路:1.找规律 tmp = matrix[i][j]; matrix[i][j] = matrix[n-j-1][i]; matrix[n-1-j][i] = matrix[n-1-i][n-原创 2015-02-20 23:25:26 · 331 阅读 · 0 评论 -
leetcode Next Permutation
题目:next permutation题意:找到一个数组的下一种排列,eg: 12345->12354 54321->12345 1324->1342思路:找了半天规律还错了。。。看了别人的结题报告,感觉碉堡了1.从后向前找到第一个升序排列的地方,比如12345的4处,1324的2处,设为第i个位置,如果找到头都没找到,那么就整个全倒置相当于54321->12345的情况原创 2015-02-12 15:09:52 · 352 阅读 · 0 评论 -
leetcode First Missing Positive
题目:https://oj.leetcode.com/problems/first-missing-positive/思路:完全没有思路,题都没看懂,看了别人的解题报告,大概是这个意思1.先把整个数组进行各种调换,最后从前往后缕,第一不等于i+1的就是缺的整数2.怎么调换:首先排除,n的数,全部跳过,因为他们不可能有属于自己的位置!什么叫属于自己的位置,比如数字3,属于他的位置就是A[原创 2015-02-14 16:20:26 · 371 阅读 · 0 评论 -
leetcode Sudoku Solver
题目:https://oj.leetcode.com/problems/sudoku-solver/题意:不用说了,解数独思路:进行回溯,每一个格子从'1',试到'9',每次试,都判断一下格子会不会出问题,用dfs,一个格子一个格子的往下走,实在走不动了,回来把刚才变化的board改回原来的'.'也就是回溯的宗旨,不行就回头,别忘了动过啥给人家放回原处,其实在判断填上这个c之后整个数组的可原创 2015-02-13 16:51:54 · 445 阅读 · 0 评论 -
leetcode Permutations
题目:https://oj.leetcode.com/problems/permutations/题意:求一个数组的各种排列方法思路:回溯,这题A的我莫名其妙,本来打算考虑一下有没有重复的可能,但是貌似这题不用考虑还是怎么回事的,直接就A了代码:class Solution {public: vector > result; void swap(int &原创 2015-02-15 14:19:47 · 394 阅读 · 0 评论 -
leetcide Valid Sudoku
题目:https://oj.leetcode.com/problems/valid-sudoku/题意:判断一个数独是否是正确的,这也是后面解数独题的一个部分,如果是格子里是“.”直接跳到下一次循环思路:3个判断+1个大的二维数组循环将整个二维数组循环一遍,每一个格子做三个判断,行,列,小格子用三个二维数组去记录这三个判断的结果,比如bool row[9][9];这个记录行的,比如原创 2015-02-13 14:55:12 · 444 阅读 · 0 评论 -
leetcode Plus One
题目:https://oj.leetcode.com/problems/plus-one/题意:一个用数组装着的大数,数组的每一个格子是一大数的每一位,问:加1之后,求返回的数组思路:按照加法去做,注意最后有可能最高位进位会越界,要重新声明一个数组或者去改变原来的数组位置据说这道题面试常用,因为可以扩展!!!class Solution {public: vect原创 2015-03-02 10:10:58 · 344 阅读 · 0 评论