# 第六十五周ARTS总结

# Algorithm

0ms | 100.00% Run time
39.2MB | 53.73% Memory

public ListNode partition(ListNode head, int x) {
    // 小于x的节点头
    ListNode smallHead = new ListNode();

    // 小于x的节点尾
    ListNode curSmall = smallHead;

    // 大于等于x的节点头
    ListNode notSmallHead = new ListNode();

    // 大于等于x的节点尾
    ListNode curNotSmall = notSmallHead;

    while (head != null) {
        if (head.val < x) {
            curSmall.next = head;
            curSmall = curSmall.next;
        } else {
            curNotSmall.next = head;
            curNotSmall = curNotSmall.next;
        }

        head = head.next;
    }

    curSmall.next = notSmallHead.next;
    curNotSmall.next = null;

    return smallHead.next;
}

public static class ListNode {
    int val;
    ListNode next;

    ListNode() {
    }

    ListNode(int val) {
        this.val = val;
    }

    ListNode(int val, ListNode next) {
        this.val = val;
        this.next = next;
    }
}
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47

# Review

# Tip

  • 上采样(即放大图片):
    • 邻插值算法
    • 双线性差值法
    • 双三次差值法
  • 被挂起的进程暂时不参与CPU的调度,直到被激活
  • 在重写View#onSaveInstanceState一定要注意其返回值情况,必须为AbsSavedState对象
  • 三次握手
    1. AB表示想跟B进行连接
    2. B收到消息,告诉A准备好和你连接了
    3. A收到消息,告诉B我收到你准备连接的信号了,此时开始连接
  • 四次挥手
    1. AB表示想跟B断开连接
    2. B收到消息,但是B消息没发送完,只能告诉A我知道了
    3. B发送完消息,告诉A可以断开连接了
    4. A收到消息,告诉B断开连接,此时断开连接
  • 挥手的第三次是为了什么:如果只有两次,只能保证B能收到A的信息,不能保证A能收到B的信息,需要双方都确认才行

# Share

暂无内容

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