# 第二十九周ARTS总结

# Algorithm

0ms | 100.00% Run time
37.9MB | 100.00% Memory

public int searchInsert(int[] nums, int target) {
    // 如果数组是空的,那索引就是0
    if (nums.length == 0) {
        return 0;
    }

    int left = 0;
    int right = nums.length - 1;

    // 如果找到了,就return;如果没找着,则right-left=1
    while (right - left > 1) {
        int middle = (left + right) / 2;

        if (target == nums[middle]) {
            return middle;
        } else if (target > nums[middle]) {
            left = middle;
        } else {
            right = middle;
        }
    }

    if (target <= nums[left]) {
        return left;
    } else if (target <= nums[right]) {
        return right;
    } else {
        return right + 1;
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

# Review

# Tip

  • Android值得研究的一些三方库
    • Retrofit:Retrofit是类型安全的HTTP客户端,可让您将REST API定义为接口;
    • Moshi:Moshi是一个将JSON转换为JavaKotlin模型的库;
    • Chuck:ChuckAndroidHTTP检查器,可让您在手机上挖掘应用程序的HTTP历史记录;
    • Glide:Glide是一个图像加载库,它公开了一个不错的API,可让您随意转换图像;
    • ThreeTen:ThreeTen是适用于Android的日期和时间处理库;
    • Timber:Timber是功能强大但简单的日志记录库,建立在Log类的顶部;
    • Room:Room是官方的Android ORM
    • RxJava:RxJavaReactiveX APIJava实现,使您可以将异步任务和事件链接到可观察的序列中;
    • Android KTX:Android KTXKotlin扩展的集合,包装了Android API,使其更加用户友好;
    • Dagger:Dagger是一个完全静态的编译时依赖项注入框架。

# Share

暂无内容

更新时间: 10/20/2022, 7:04:01 AM