mirror of
https://github.com/chefyuan/algorithm-base.git
synced 2024-11-24 13:03:41 +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
|
```java
|
||||||
class Solution {
|
class Solution {
|
||||||
public int findMin(int[] nums) {
|
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 二叉树的层序遍历**
|
**测试题目: leetcode 102 二叉树的层序遍历**
|
||||||
|
|
||||||
|
Java Code:
|
||||||
|
|
||||||
```java
|
```java
|
||||||
class Solution {
|
class Solution {
|
||||||
public List<List<Integer>> levelOrder(TreeNode root) {
|
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)
|
时间复杂度:O(n) 空间复杂度:O(n)
|
||||||
|
|
||||||
大家如果吃透了二叉树的层序遍历的话,可以顺手把下面几道题目解决掉,思路一致,甚至都不用拐弯
|
大家如果吃透了二叉树的层序遍历的话,可以顺手把下面几道题目解决掉,思路一致,甚至都不用拐弯
|
||||||
|
Loading…
Reference in New Issue
Block a user