Merge branch 'youngyangyang04:master' into master

This commit is contained in:
Yunliuyu
2024-05-02 21:40:58 +08:00
committed by GitHub
3 changed files with 12 additions and 12 deletions

View File

@ -260,7 +260,7 @@ class Solution {
} }
//每次迭代获取一个字符串,所以会设计大量的字符串拼接,所以这里选择更为高效的 StringBuilder //每次迭代获取一个字符串,所以会涉及大量的字符串拼接,所以这里选择更为高效的 StringBuilder
StringBuilder temp = new StringBuilder(); StringBuilder temp = new StringBuilder();
//比如digits如果为"23",num 为0则str表示2对应的 abc //比如digits如果为"23",num 为0则str表示2对应的 abc
@ -274,7 +274,7 @@ class Solution {
String str = numString[digits.charAt(num) - '0']; String str = numString[digits.charAt(num) - '0'];
for (int i = 0; i < str.length(); i++) { for (int i = 0; i < str.length(); i++) {
temp.append(str.charAt(i)); temp.append(str.charAt(i));
//c //递归,处理下一层
backTracking(digits, numString, num + 1); backTracking(digits, numString, num + 1);
//剔除末尾的继续尝试 //剔除末尾的继续尝试
temp.deleteCharAt(temp.length() - 1); temp.deleteCharAt(temp.length() - 1);

View File

@ -314,17 +314,17 @@ func searchInsert(nums []int, target int) int {
```rust ```rust
impl Solution { impl Solution {
pub fn search_insert(nums: Vec<i32>, target: i32) -> i32 { pub fn search_insert(nums: Vec<i32>, target: i32) -> i32 {
let mut left = 0; use std::cmp::Ordering::{Equal, Greater, Less};
let mut right = nums.len(); let (mut left, mut right) = (0, nums.len() as i32 - 1);
while left < right { while left <= right {
let mid = (left + right) / 2; let mid = (left + right) / 2;
match nums[mid].cmp(&target) { match nums[mid as usize].cmp(&target) {
Ordering::Less => left = mid + 1, Less => left = mid + 1,
Ordering::Equal => return ((left + right) / 2) as i32, Equal => return mid,
Ordering::Greater => right = mid, Greater => right = mid - 1,
} }
} }
((left + right) / 2) as i32 right + 1
} }
} }
``` ```

View File

@ -585,7 +585,7 @@ impl Solution {
let mut dummyHead = Box::new(ListNode::new(0)); let mut dummyHead = Box::new(ListNode::new(0));
dummyHead.next = head; dummyHead.next = head;
let mut cur = dummyHead.as_mut(); let mut cur = dummyHead.as_mut();
// 使用take()替换std::men::replace(&mut node.next, None)达到相同的效果,并且更普遍易读 // 使用take()替换std::mem::replace(&mut node.next, None)达到相同的效果,并且更普遍易读
while let Some(nxt) = cur.next.take() { while let Some(nxt) = cur.next.take() {
if nxt.val == val { if nxt.val == val {
cur.next = nxt.next; cur.next = nxt.next;