随笔分类 -  算法

leetcode Insertion Sort List
摘要:题目:Sort a linked list using insertion sort.代码: 1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNod... 阅读全文
posted @ 2014-09-23 23:46 卡西大人 阅读(141) 评论(0) 推荐(0)
leetcode sort List
摘要:Sort a linked list in O(n log n) time using constant space complexity./** * Definition for singly-linked list. * struct ListNode { * int val; * ... 阅读全文
posted @ 2014-09-13 21:05 卡西大人 阅读(182) 评论(0) 推荐(0)
【待字闺中】最少插入字符
摘要:题目给定字符串,可以通过插入字符,使其变为回文。求最少插入字符的数量。例如:1.ab最少插入1个字符,变为*b*ab2.aa最少插入0个字符3.abcd最少插入3个字符,*dcb*abcd思路:给出递归的解法,发现重复的子问题,然后改进算法,用动态规划。https://gist.github.com... 阅读全文
posted @ 2014-09-02 23:51 卡西大人 阅读(247) 评论(0) 推荐(0)
【待字闺中】数对数目
摘要:题目:给定两个数组X和Y,元素都是正数。请找出满足一下条件的数对的数目:1.x^y>y^x,即x的y次方>y的x次方2.x来自X数组,y来自Y数组分析,一。暴力搜索。X数组长度m,Y数组长度n, 复杂度o(m*n)二。数学变换。log(x)/x>log(y)/y1.数组X,Y分别代入f(a)=log... 阅读全文
posted @ 2014-09-02 23:22 卡西大人 阅读(120) 评论(0) 推荐(0)
【转】一些经典的笔试题
摘要:【题1】有一幢100层高的大厦,给你两个完全相同的玻璃围棋子。假设从某一层开始,丢下玻璃棋子就会摔碎。那么怎么利用 手中的两颗棋子,用一种什么样的最优策略,知道这个临界的层高呢?【分析】:先从14楼开始抛第一次;如果没碎,再从27楼抛第二次;如果还没碎,再从39楼抛第三次;如果还没碎,再从50 楼抛第四次;如此,每次间隔的楼层少一层。这样,任何一次抛棋子碎时,都能确保最多抛14次可以找出临界楼层。=========================================================【题2】有36匹马,六个跑道?没有记时器等设备,用最少的比赛次数算出跑的最快的前三名马 阅读全文
posted @ 2013-09-18 17:27 卡西大人 阅读(597) 评论(1) 推荐(0)