算法设计与应用基础-第六周
2017-04-01 21:49
363 查看
Remove Duplicates from Sorted List
Given a sorted linked list, delete all duplicates such that each element appear onlyonce.
For example,
Given
Given
Binary Tree Level Order Traversal II
Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left to right, level by level from leaf to root).
For example:
Given binary tree
return its bottom-up level order traversal as:
Given a sorted linked list, delete all duplicates such that each element appear onlyonce.
For example,
Given
1->1->2, return
1->2.
Given
1->1->2->3->3, return
1->2->3.
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* deleteDuplicates(ListNode* head) { if(head==NULL) return head; else if(head!=NULL) { ListNode* pre=head; ListNode* nex=head->next; while(nex) { if(pre->val==nex->val) { pre->next=nex->next; nex=nex->next; } else if(pre->val!=nex->val) { pre=pre->next; nex=nex->next; } } return head; } } };
Binary Tree Level Order Traversal II
Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left to right, level by level from leaf to root).
For example:
Given binary tree
[3,9,20,null,null,15,7],
3 / \ 9 20 / \ 15 7
return its bottom-up level order traversal as:
[ [15,7], [9,20], [3] ]
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: vector<vector<int>> levelOrderBottom(TreeNode* root) { vector<vector<int>> res; if (root == NULL) return res; queue<TreeNode *> q; q.push(root); while (!q.empty()) { int l = q.size(); vector<int> node; for (int i = 0; i < l; i++) { TreeNode *cur = q.front(); q.pop(); node.push_back(cur->val); if (cur->left != NULL) q.push(cur->left); if (cur->right != NULL) q.push(cur->right); } res.push_back(node); } reverse(res.begin(), res.end()); return res; } };
相关文章推荐
- 算法设计与应用基础:第六周
- 算法设计与应用基础: 第六周(1)
- 算法设计与应用基础: 第三周(2)
- 算法设计与应用基础-第三周
- 算法设计与应用基础: 第五周(1)
- 算法设计与应用基础:第一周(3)
- 算法设计与应用基础作业第二周
- 算法设计与应用基础作业(二)
- 算法设计与应用基础:第七周
- 算法设计与应用基础-第一周题目
- 算法设计与应用基础-第四周
- 算法设计与应用基础: 第三周(1)
- 算法设计与应用基础: 第三周(3)
- 算法设计与应用基础: 第七周(1)
- 算法设计与应用基础: 第四周(1)
- 算法设计与应用基础:第一周
- 算法设计与应用基础 - Week01
- 算法设计与应用基础作业(三)
- 算法设计与应用基础:第二周(1)
- 算法设计与应用基础:第二周(2)