- 博客(6)
- 收藏
- 关注
原创 299-e-Bulls and Cows
数字游戏,根据提示猜数字。乍一看就是哈希了,好像不难上手就写,但后来发现自己根本没完全理解要求导致老是错误。难点在于当有重复数字时确定那个cows,也就是b。反正自己写了蛮久cows的逻辑,我只看出了b不能大于secret中该字的出现次数,然后就是改啊改的,就是不完全对。原因在于自己没有搞懂它确定的逻辑到底是什么。提交了n次后怒查答案,发现有个思路是将secret和guess都哈希然后其各位最小值
2016-03-30 17:01:09 270
原创 328-m-Odd Even Linked List
将单链表中所有奇数位和偶数位的节点按顺序平分成两部分,奇数位的在前部分。要求用O(1),否则新建2个表再连起来没意义。考虑设置一个奇数位指针和一个偶数位指针,分别将链表中奇数节点和偶数节点串联起来,就像串珠子一样,最后将奇数链的末位与偶数链的首位相连即可。写的时候有个小坑,就是奇数或偶数链走到最后时,要将另一个链表中的末节点的next置为NULL因为此时两个链的末位都是指向该节点,否则连起
2016-03-29 17:46:14 233
原创 257-e-Binary Tree Paths
本题逻辑不难,就一个深搜把经过的节点依次记录就行。但是因为用C,所以返回的char** 老要realloc,内存不好管理,写完后自己的Xcode过了但是oj老是runtime error应该就是内存处理不好,把自己代码贴上来做个记录,以后可能会重看内存是否有误://void pathOfBTree(struct TreeNode *node, int level, int *returnSiz
2016-03-29 16:38:35 225
原创 236-m-Lowest Common Ancestor of a Binary Tree
求二叉树的最小公共祖先。虽然LCA的定义很好理解,但要用程序逻辑表达出来不简单。自己想的思路是将两个目标节点的遍历路径记录下来然后找出第一个相同的节点。无奈用C的话没有vector不方便就作罢。网上参考了下,发现以下AC代码的逻辑还是很巧妙的,而且代码量很小:struct TreeNode* lowestCommonAncestor(struct TreeNode* root, str
2016-03-26 22:25:18 284
原创 110-e-Balanced Binary Tree
判断是否是平衡二叉树,即左右子树高度差不大于1,子树同样。之前写过的有错误就一直搁置了,因为自己没有用例可测只一次次修改后直接提交让leet来帮测(其实是自己懒写二叉树的构造遍历等等一些列函数所以构造不出二叉树来测试,没有输入当然也就无法debug)。重写时在求node的depth有思路想了很久但就是没实现,那感觉就像all most there但就是到不了there,纠结后还是参考了网络
2016-03-24 16:41:58 167
原创 6-e-ZigZag Conversion
好久没刷leet了,最近想着把以前遗留的题重新刷一下。这道折线排列字符的题目记得是刚开始刷leet的时候,对leet的难度和规律还没有映像,当时觉得很难而且理解还有误区(英语理解不准确),导致写了好大一段代码最后还是deny。现在重新看了一下,发现其实是个数学题,大致规律就是相邻两竖线中同列两字符的差值一定等于(numRows - 1)*2,如果其两字符中间有间隔字符的话,这些间隔字符的间
2016-03-20 20:35:51 234
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人