LeetCode
liuxinglin
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
二叉树先序遍历非递归方法的两种实现
vector preorderTraversal(TreeNode *root){vector result;stack s;if (root == NULL)return result;s.push(root); //将根节点入栈while (!s.empty()){TreeNode *p = s.top();result.push_back(p->val);s.pop();if (p->rig原创 2015-04-23 20:17:39 · 657 阅读 · 0 评论 -
按层遍历二叉树
使用C++中的pair类型来存储树的节点和它的层数vector > levelOrder(TreeNode *root){ vector > vec; if (root == NULL) return vec; queue > queue; pair pair(root, 0); //根节点是第0层 queue.pu原创 2015-04-25 23:15:09 · 523 阅读 · 0 评论 -
二叉树中序遍历的非递归方法
vector inorderTraversal(TreeNode *root){ vector result; if (root == NULL) return result; stack s; TreeNode *p = root; while (p || !s.empty()) { while原创 2015-04-25 16:21:53 · 547 阅读 · 1 评论 -
反转链表的迭代实现和递归实现
迭代实现:ListNode *reverseList(ListNode *head){ if (head == NULL || head->next == NULL) return head; ListNode *pCurr = head; ListNode *pPrev = NULL; ListNode *pNext = NULL; while (pCurr != NUL原创 2015-05-13 09:36:03 · 571 阅读 · 0 评论 -
Reverse Linked List II
ListNode *reverseBetween(ListNode* head, int m, int n) { if (m == n) return head; n -= m; ListNode prehead(0); prehead.next = hea原创 2015-06-08 22:11:15 · 483 阅读 · 0 评论
分享