摘要: 这道题用DFS加计数肯定是可以做的,但是我忽然想不起下一个排列的非递归做法了。后来在网上找到如下:http://blog.csdn.net/morewindows/article/details/7370155如何计算字符串的下一个排列了?来考虑"926520"这个字符串,我们从后向前找第一双相邻的... 阅读全文
posted @ 2013-10-05 19:56 阿牧遥 阅读(320) 评论(0) 推荐(0)
摘要: 关键:1.维持三个指针pPrePre, pPre, pCurrent(两个其实也可以);2.使用头结点dummy简化过程;class Solution {public: ListNode *deleteDuplicates(ListNode *head) { ListNode* dummy = new ListNode(-1); dummy->next = head; ListNode* pPrePre = dummy; if (pPrePre == NULL) return dummy->next; ListNode... 阅读全文
posted @ 2013-10-05 19:24 阿牧遥 阅读(155) 评论(0) 推荐(0)
摘要: 不难。纸上画一下就知道规律了。public class Solution { public String countAndSay(int n) { StringBuilder last = new StringBuilder(); StringBuilder current = new StringBuilder("1"); int i = 1; while (i < n) { last = current; current = new StringBuilder(); ... 阅读全文
posted @ 2013-10-05 14:04 阿牧遥 阅读(155) 评论(0) 推荐(0)