上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 62 下一页
摘要: 题意: 给一个升序的数组,如果target在里面存在了,返回其下标,若不存在,返回其插入后的下标。思路: 来一个简单的二分查找就行了,注意边界。 1 class Solution { 2 public: 3 int searchInsert(vector& nums,int target... 阅读全文
posted @ 2015-10-29 19:44 xcw0754 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 题意: 一棵BST有n个节点,每个节点的key刚好为1~n。问此树有多少种不同形态?思路: 提示是动态规划。 考虑一颗有n个节点的BST和有n-1个节点的BST。从n-1到n只是增加了一个点n,那么点n可以放的地方并不多,而且有一些规律。由于n是最大的,所以必定是在最右边,但是它的上面和下面也... 阅读全文
posted @ 2015-10-29 19:42 xcw0754 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 附:vim的入门书,感觉比vimtutor还要赞一点。 看完《每天一个linux命令系列 》基本上就差不多了,但是还是有一些需要补上的。 日常+生癖命令: (1)删除软件:sudo apt-get autoremove --purge 软件名 (2)更新源:sudo apt-get update ( 阅读全文
posted @ 2015-10-29 16:58 xcw0754 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 题意: 给一个含有n个整数的数组,数组中的元素应该是0~n。现在缺了其中某1个,找出缺少的那个整数?思路: 0~n的总和是可以直接计算的,而缺少的那个就是sum减去数组的和。1 int missingNumber(vector& nums)2 {3 int sum=0;4 for... 阅读全文
posted @ 2015-10-28 22:00 xcw0754 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 题意: 给出两个字符串s和t,判断串t是否为s打乱后的串。思路: 如果返回的是true,则两个串的长度必定相等,所有字符出现的次数一样。那么可以统计26个字母的次数来解决,复杂度O(n)。也可以排序后逐个比对,复杂度O(nlogn)。第一种方法: 1 class Solution { 2 pub... 阅读全文
posted @ 2015-10-28 21:39 xcw0754 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 题意: 给一个数组,其中仅有两个元素是出现1次的,且其他元素均出现2次。求这两个特殊的元素?思路: 跟查找单个特殊的那道题是差不多的,只是这次出现了两个特殊的。将数组扫一遍求全部元素的异或和 x,结果也就是这两个特殊的元素的异或和了。现在必须找到两个当中的一个,才能恢复出另外一个。注意到x的二进... 阅读全文
posted @ 2015-10-28 21:13 xcw0754 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 题意: 股票买卖第2题。给出每天的股票价格,每次最多买一股,可以多次操作,但是每次在买之前必须保证身上无股票。问最大的利润?思路: 每天的股票价格可以看成是一条曲线,能卖掉就卖掉,那么肯定是在上升的时候就可以卖掉,但是在不卖的时候要保证自己身上的那只股票的价格是最低价买进的。 1 class S... 阅读全文
posted @ 2015-10-28 20:21 xcw0754 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 题意: 给定一个整型数组nums,要求将其中所有的0移动到末尾,并维护所有非0整数的相对位置不变。思路: 扫一遍,两个指针维护0与非0的交界,将非0的数向前赋值就行了。C++ 1 class Solution { 2 public: 3 void moveZeroes(vector& n... 阅读全文
posted @ 2015-10-28 11:32 xcw0754 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 题意: 将一个整数num变成它的所有十进制位的和,重复操作,直到num的位数为1,返回num。思路: 注意到答案的范围是在区间[0,9]的自然数,而仅当num=0才可能答案为0。 规律在于随着所给自然数num的递增,结果也是在1~9内循环递增的,那么结果为(num-1)%9+1。 C++:1... 阅读全文
posted @ 2015-10-28 11:13 xcw0754 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 题意: 有一堆石子,里面有n个石头,每次可以从中取出1~3个,两人轮流取,最后一个石子被谁取走即为赢家。你先取,问最后谁赢?思路: n%4>0则先手赢,因为每次总是可以给对方留4个石子的倍数,而对方最多只能取到3个,剩下的给先手来取,所以先手赢。C++:1 class Solution {2 p... 阅读全文
posted @ 2015-10-28 10:26 xcw0754 阅读(154) 评论(0) 推荐(0) 编辑
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 62 下一页