mirror of
https://github.com/chefyuan/algorithm-base.git
synced 2024-12-27 04:46:17 +00:00
Merge branch 'main' of https://github.com/chefyuan/algorithm-base
This commit is contained in:
commit
46f91e3368
@ -60,6 +60,8 @@
|
||||
|
||||
**题目代码**
|
||||
|
||||
Java Code:
|
||||
|
||||
```java
|
||||
class Solution {
|
||||
public int findMin(int[] nums) {
|
||||
@ -85,3 +87,27 @@ class Solution {
|
||||
}
|
||||
```
|
||||
|
||||
C++ Code:
|
||||
|
||||
```cpp
|
||||
class Solution {
|
||||
public:
|
||||
int findMin(vector <int> & nums) {
|
||||
int left = 0;
|
||||
int right = nums.size() - 1;
|
||||
while (left < right) {
|
||||
if (nums[left] < nums[right]) {
|
||||
return nums[left];
|
||||
}
|
||||
int mid = left + ((right - left) >> 1);
|
||||
if (nums[left] > nums[mid]) {
|
||||
right = mid;
|
||||
} else {
|
||||
left = mid + 1;
|
||||
}
|
||||
}
|
||||
return nums[left];
|
||||
}
|
||||
};
|
||||
```
|
||||
|
||||
|
@ -350,6 +350,8 @@ class Solution {
|
||||
|
||||
**测试题目: leetcode 102 二叉树的层序遍历**
|
||||
|
||||
Java Code:
|
||||
|
||||
```java
|
||||
class Solution {
|
||||
public List<List<Integer>> levelOrder(TreeNode root) {
|
||||
@ -378,6 +380,33 @@ class Solution {
|
||||
}
|
||||
```
|
||||
|
||||
C++ Code:
|
||||
|
||||
```cpp
|
||||
class Solution {
|
||||
public:
|
||||
vector<vector<int>> levelOrder(TreeNode* root) {
|
||||
vector<vector<int>> res;
|
||||
if (!root) return res;
|
||||
queue<TreeNode *> q;
|
||||
q.push(root);
|
||||
while (!q.empty()) {
|
||||
vector <int> t;
|
||||
int size = q.size();
|
||||
for (int i = 0; i < size; ++i) {
|
||||
TreeNode * temp = q.front();
|
||||
q.pop();
|
||||
if (temp->left != nullptr) q.push(temp->left);
|
||||
if (temp->right != nullptr) q.push(temp->right);
|
||||
t.emplace_back(temp->val);
|
||||
}
|
||||
res.push_back(t);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
};
|
||||
```
|
||||
|
||||
时间复杂度:O(n) 空间复杂度:O(n)
|
||||
|
||||
大家如果吃透了二叉树的层序遍历的话,可以顺手把下面几道题目解决掉,思路一致,甚至都不用拐弯
|
||||
|
Loading…
Reference in New Issue
Block a user