From 03aaafdc0a8d54ef1610e0e7c9725183a0dc887d Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Wed, 27 Jan 2021 16:43:25 +0800 Subject: [PATCH 01/58] init project --- Week_01/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Week_01/README.md b/Week_01/README.md index 50de3041..8690ce1d 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -1 +1,5 @@ -学习笔记 \ No newline at end of file +# 一、学习笔记 + +# 二、作业思路 + +# 三、小结 \ No newline at end of file From 8fded4ba77e433a30df2e9b97822b417248ee35b Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Wed, 27 Jan 2021 16:57:01 +0800 Subject: [PATCH 02/58] add init --- .idea/algorithm024.iml | 12 +++ .idea/misc.xml | 6 ++ .idea/modules.xml | 8 ++ .idea/vcs.xml | 6 ++ .idea/workspace.xml | 199 +++++++++++++++++++++++++++++++++++++++++ Week_01/README.md | 2 +- Week_02/README.md | 6 +- 7 files changed, 237 insertions(+), 2 deletions(-) create mode 100644 .idea/algorithm024.iml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 .idea/workspace.xml diff --git a/.idea/algorithm024.iml b/.idea/algorithm024.iml new file mode 100644 index 00000000..54906799 --- /dev/null +++ b/.idea/algorithm024.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 00000000..28a804d8 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 00000000..9b2e9db3 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 00000000..35eb1ddf --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 00000000..ca18be03 --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,199 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - 1611731557459 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file From 06fa7e0052015bd6087886d60efb5560d589f732 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sat, 30 Jan 2021 08:49:45 +0800 Subject: [PATCH 04/58] add: .gitignore --- .gitignore | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..364ca675 --- /dev/null +++ b/.gitignore @@ -0,0 +1,37 @@ +# Mobile Tools for Java (J2ME) +.mtj.tmp/ + +# Package Files # +*.jar +*.war +*.ear + +# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml +hs_err_pid* + +*~ + +# eclipse ignore +.settings +.project +.classpath +.tomcatplugin +logPath_IS_UNDEFINED +*.gz +disconf +dist +logs + +# idea ignore +.idea +*.iml + +# maven ignore +target + +# other ignore +*.log +*.tmp +Thumbs.db +*.DS_Store +.factorypath From f53b183343c37639dc1ae81380791f5df3f1e893 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 31 Jan 2021 22:21:07 +0800 Subject: [PATCH 05/58] add:Week_01 homework --- Week_01/README.md | 44 +++++++++++++++++-- Week_01/homework/README.md | 5 +++ Week_01/note/README.md | 87 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 133 insertions(+), 3 deletions(-) create mode 100644 Week_01/homework/README.md create mode 100644 Week_01/note/README.md diff --git a/Week_01/README.md b/Week_01/README.md index 9f52e89d..34aaa166 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -1,5 +1,43 @@ -# 一、学习笔记 +本周学习了数组、链表、跳表、栈、队列五种数据结构,做了部分联系,还没进入节奏,整体投入时间较少。 -# 二、本周作业 +--- -# 三、小结 \ No newline at end of file +### 一、学习笔记 +[第一周学习笔记](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note) + +### 二、练习汇总 +[leetcode-做题记录(建设中)](https://github.com/xiaoboji/j-leetcode) + +### 三、本周作业 + +简单: +- [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) +- 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) +- [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + +中等: +- [设计循环双端队列(Facebook 在 1 年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + +困难: +- 接雨水(亚马逊、字节跳动、高盛集团、Facebook 在半年内面试常考) + +### 四、心得及小结 +心得 +- 五毒神掌5分钟限时贯彻不彻底,还是会和题目杠上,最后又是一地鸡毛 +- 五毒神掌重复刷题贯彻不彻底,目前还是一遍的居多,需要按艾宾浩斯记忆法第0天/+1天/+3天/+7天/+30天 +- 第一遍参考别人的代码,有时候直接抄过来,其实没有理解,抄完了其实没有做完,需要理解清除 + +本周小结 +- Arrays.asList()不能直接作用于基本数据类型如int,asList接收的是一个泛型变长参数,而我们知道基本类型是不能泛型化的,就是说8种基本类型不能作为泛型参数,要想作为泛型参数就要使用其所对应的包装类。 +- 单链表实际用的比较少,一般都是使用双端链表。 + +### 五、疑问及困惑 + +- 对于链表的指针没有理解透彻,时长犯晕 pre = pre.next、pre.next = pre.next.next? +- 很多题都有很多种解法,对于参考来说,我们需要看几种解法就够了? \ No newline at end of file diff --git a/Week_01/homework/README.md b/Week_01/homework/README.md new file mode 100644 index 00000000..9f52e89d --- /dev/null +++ b/Week_01/homework/README.md @@ -0,0 +1,5 @@ +# 一、学习笔记 + +# 二、本周作业 + +# 三、小结 \ No newline at end of file diff --git a/Week_01/note/README.md b/Week_01/note/README.md new file mode 100644 index 00000000..a4832c21 --- /dev/null +++ b/Week_01/note/README.md @@ -0,0 +1,87 @@ +本周主要学习了如下6种数据结构 +# 数组 + +> 经典的定义:数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。数组支持随机访问,根据下标随机访问的时间复杂度为 O(1) + +中间有三个核心概念 +- 线程表 + +线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。 + +与之相对应的是非线性表,非线性表中,数据之间并不是简单的前后关系,往往具有多前或者多后。比如二叉树、堆、图等。 +- 连续的内存空间 + +即使整体内存足够,但是数据不连续,也无法初始化需要大小的数组。 + +- 相同类型的数据 + +java中即使现在有了泛型,在泛型擦除之后,也还是具体的相同的数据类型。 + +小结: + +正是有了上述三个特点,才使得数组有了杀手锏一样的特性,随机访问。但是有利有弊,连续的内存空间和相同的数据类型,也使得数据的删除插入等操作低效,因为了保证连续性,就要移动大量的数据。 + +时间复杂度分析: + +操作 | 时间复杂度 +-------- | ----- +插入 | O(N) +删除 | O(N) +修改 | O(1) +查询 | O(1) + +# 链表 + +> 链表与数组恰恰相反,它并不需要一块连续的内存空间,它通过“指针”将一组零散的内存块串联起来使用,所以如果我们申请的是100MB大小的链表,根本不会有问题。 + +- 单链表 + +只记录后继节点信息的链表,习惯性地把第一个结点叫作头结点,把最后一个结点叫作尾结点 + +- 双向链表 + +单向链表只有一个方向,结点只有一个后继指针 next 指向后面的结点。而双向链表,顾名思义,它支持两个方向,每个结点不止有一个后继指针 next 指向后面的结点,还有一个前驱指针 prev 指向前面的结点。 + +记录前后节点信息,查询比单链快,删除比单链简单,前插快,查找能类二分 + +- 循环链表 + +循环链表是一种特殊的单链表。实际上,循环链表也很简单。它跟单链表唯一的区别就在尾结点。我们知道,单链表的尾结点指针指向空地址,表示这就是最后的结点了。而循环链表的尾结点指针是指向链表的头结点。 + +和单链表相比,循环链表的优点是从链尾到链头比较方便。当要处理的数据具有环型结构特点时,就特别适合采用循环链表。比如著名的约瑟夫问题。尽管用单链表也可以实现,但是用循环链表实现的话,代码就会简洁很多。 + +时间复杂度:正好和数据想法 +操作 | 时间复杂度 +-------- | ----- +插入 | O(1) +删除 | O(1) +修改 | O(N) +查询 | O(N) + +# 跳表 + +Redis对于Set的优化实现方式,必须针对有序数据,指的是加多级索引的结构,支持类似“二分”的查找算法 + +# 栈 + +后进先出,先进后出,类似于叠盘子。 + +从栈的操作特性上来看,栈是一种“操作受限”的线性表,只允许在一端插入和删除数据。从功能上来说,数组或链表确实可以替代栈,但你要知道,特定的数据结构是对特定场景的抽象,而且,数组或链表暴露了太多的操作接口,操作上的确灵活自由,但使用时就比较不可控,自然也就更容易出错。 + +栈既可以通过数组实现,也可以通过链表来实现。用数组实现的栈,我们叫作顺序栈,用链表实现的栈,我们叫作链式栈。 + +不管基于数组还是链表,入栈、出栈的时间复杂度都为 O(1) + +栈只支持两个基本操作:入栈 push()和出栈 pop() + +# 队列 + +先进先出,后进后出,类似于排队买票。 + +最基本的操作也是两个:入队 enqueue(),放一个数据到队列尾部;出队 dequeue(),从队列头部取一个元素。 + +## 总结的blog链接 + +- [数据结构与算法(一)【数组】【详解及实战】](https://xiaoboji.blog.csdn.net/article/details/107009834) +- [数据结构与算法(二)【链表】【详解及编程技巧】](https://xiaoboji.blog.csdn.net/article/details/108612136) +- [数据结构与算法(三)【栈】【详解及应用】](https://xiaoboji.blog.csdn.net/article/details/108687655) From 74cf2327fb7b90235d03d376f4f062887cb00d3b Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 31 Jan 2021 22:34:54 +0800 Subject: [PATCH 06/58] update:week01 homework --- Week_01/README.md | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/Week_01/README.md b/Week_01/README.md index 34aaa166..f7aab03b 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -1,4 +1,4 @@ -本周学习了数组、链表、跳表、栈、队列五种数据结构,做了部分联系,还没进入节奏,整体投入时间较少。 +本周学习了数组、链表、跳表、栈、队列五种数据结构,做了部分练习,整体还没进入节奏,投入时间较少。 --- @@ -11,21 +11,21 @@ ### 三、本周作业 简单: -- [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) -- 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) -- [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +-[x] [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +-[x] [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +-[ ] 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) +-[ ] 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) +-[x] [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +-[x] [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +-[x] [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +-[x] [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +-[x] [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) 中等: -- [设计循环双端队列(Facebook 在 1 年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +-[x] [设计循环双端队列(Facebook 在 1 年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) 困难: -- 接雨水(亚马逊、字节跳动、高盛集团、Facebook 在半年内面试常考) +-[ ] 接雨水(亚马逊、字节跳动、高盛集团、Facebook 在半年内面试常考) ### 四、心得及小结 心得 @@ -35,7 +35,7 @@ 本周小结 - Arrays.asList()不能直接作用于基本数据类型如int,asList接收的是一个泛型变长参数,而我们知道基本类型是不能泛型化的,就是说8种基本类型不能作为泛型参数,要想作为泛型参数就要使用其所对应的包装类。 -- 单链表实际用的比较少,一般都是使用双端链表。 +- 源码实现种单链表实际用的比较少,一般都是使用双端链表 ### 五、疑问及困惑 From 916b70b696fdb2a19a94eb7eb0ebadadba7f5735 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 31 Jan 2021 23:31:08 +0800 Subject: [PATCH 07/58] update:week01 homework --- .gitignore | 1 + Week_01/homework/DequeNewApiDemo.java | 40 ++++++++ Week_01/homework/QueueDemo.java | 14 +++ Week_01/homework/README.md | 87 +++++++++++++++++- .../pic/Queue-Deque-PriorityQueue-In-Java.png | Bin 0 -> 54241 bytes 5 files changed, 139 insertions(+), 3 deletions(-) create mode 100644 Week_01/homework/DequeNewApiDemo.java create mode 100644 Week_01/homework/QueueDemo.java create mode 100644 Week_01/pic/Queue-Deque-PriorityQueue-In-Java.png diff --git a/.gitignore b/.gitignore index 364ca675..38ce3a53 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ # Mobile Tools for Java (J2ME) .mtj.tmp/ +out # Package Files # *.jar diff --git a/Week_01/homework/DequeNewApiDemo.java b/Week_01/homework/DequeNewApiDemo.java new file mode 100644 index 00000000..a9c51822 --- /dev/null +++ b/Week_01/homework/DequeNewApiDemo.java @@ -0,0 +1,40 @@ +package Week_01.homework; + +import java.util.LinkedList; +import java.util.Queue; + +/** + * @program: algorithm024 + * @description: 用 add first 或 add last 这套新的 API 改写 Deque 的代码 + * @author: xiaoboji + * @create: 2021-01-31 22:36 + **/ +public class DequeNewApiDemo { + public static void main(String[] args){ + // linkedList implements deque + // Old api + Queue deque = new LinkedList<>(); + deque.add(10000); + deque.add(20000); + deque.add(30000); + System.out.println("Deque:" + deque); + + // new api + LinkedList ll = new LinkedList(); + // Adding elements to the linked list + ll.add("A"); + ll.add("B"); + ll.addLast("C"); + ll.addFirst("D"); + ll.add(2, "E"); + + System.out.println(ll); + + ll.remove("B"); + ll.remove(3); + ll.removeFirst(); + ll.removeLast(); + + System.out.println(ll); + } +} diff --git a/Week_01/homework/QueueDemo.java b/Week_01/homework/QueueDemo.java new file mode 100644 index 00000000..dd3a5d39 --- /dev/null +++ b/Week_01/homework/QueueDemo.java @@ -0,0 +1,14 @@ +package Week_01.homework; + +import java.util.PriorityQueue; +import java.util.Queue; + +/** + * @program: algorithm024 + * @description: study queue source code + * @author: xiaoboji + * @create: 2021-01-31 23:01 + **/ +public class QueueDemo { + Queue queue = new PriorityQueue(); +} diff --git a/Week_01/homework/README.md b/Week_01/homework/README.md index 9f52e89d..86bfa1d9 100644 --- a/Week_01/homework/README.md +++ b/Week_01/homework/README.md @@ -1,5 +1,86 @@ -# 一、学习笔记 +- [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +```java +public class DequeNewApiDemo { + public static void main(String[] args){ + // linkedList implements deque + // Old api + Queue deque = new LinkedList<>(); + deque.add(10000); + deque.add(20000); + deque.add(30000); + System.out.println("Deque:" + deque); -# 二、本周作业 + // new api + LinkedList ll = new LinkedList(); + // Adding elements to the linked list + ll.add("A"); + ll.add("B"); + ll.addLast("C"); + ll.addFirst("D"); + ll.add(2, "E"); -# 三、小结 \ No newline at end of file + System.out.println(ll); + + ll.remove("B"); + ll.remove(3); + ll.removeFirst(); + ll.removeLast(); + + System.out.println(ll); + } +} +``` +this program output: +``` +Deque:[10000, 20000, 30000]
+[D, A, E, B, C]
+[A]
+``` +- [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + * 继承关系 + + |-Iterable(Interface)
+ |----Collection(Interface)
+ |-------Queue(Interface)
+ |----------Deque(Interface)
+ |-------------LinkedList(Class)
+ |-------------ArrayList(Class)
+ |----------PriorityQueue(Class)
+ + * Queue接口,相关方法如下所示 + + add(E e):将指定的元素插入到此队列中如果当前没有可用空间,则抛出IllegalStateException + + element:检索,但不删除,这个队列的头。 + + offer(E e):如果在不违反容量限制的情况下立即执行,则将指定的元素插入到此队列中。 + + peek:检索但不删除此队列的头,如果此队列为空,则返回 null + + poll:检索并删除此队列的头,如果此队列为空,则返回 null + + remove:检索并删除此队列的头 + + * PriorityQueue + + 简介 + + 优先队列。优先队列的作用是能保证每次取出的元素都是队列中权值最小的。这里牵涉到了大小关系,元素大小的评判可以通过元素本身的自然顺序,也可以通过构造时传入的比较器. + + Java中PriorityQueue实现了Queue接口,不允许放入null元素;其通过堆实现,具体说是通过完全二叉树(complete binary tree)实现的小顶堆(任意一个非叶子节点的权值,都不大于其左右子节点的权值),也就意味着可以通过数组来作为PriorityQueue的底层实现。 + + + 关键点 + + 由于插入元素有优先级,所有有一个比较器的东西。其中的插入和弹出都做了自己的特有的处理,关键入口函数是siftUp和siftDown,这两个函数里面进行一些优先级的比较 + + + 方法列表 + + add:添加元素到队列中,队列满了会抛异常,其中调用offer函数进行插入 + + offer:插入元素到队列中,空就抛异常,原本没有元素就直接插入,有就调用siftUp函数进行插入 + + peek:直接返回头部元素 + + poll:获取并移除头部元素,siftDown函数返回数据 + + remove:其中调用了siftDown函数进行一些处理,移除头部元素 + + 参考链接 + + [深入理解Java PriorityQueue](https://www.cnblogs.com/CarpenterLee/p/5488070.html) + + [Java8 PriorityQueue 源码阅读](https://blog.csdn.net/codejas/article/details/85144502) + + [Queue Interface In Java](https://www.geeksforgeeks.org/queue-interface-java/) + +- 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) +- 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) +- [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) diff --git a/Week_01/pic/Queue-Deque-PriorityQueue-In-Java.png b/Week_01/pic/Queue-Deque-PriorityQueue-In-Java.png new file mode 100644 index 0000000000000000000000000000000000000000..93dfda1772024c424ac30fca38d4bbf4d7d8ac51 GIT binary patch literal 54241 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 JQ7}Cw{ZEn;?12CP literal 0 HcmV?d00001 From c34d72873162369c1a47e27e1fca2fdfc062c1cc Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 31 Jan 2021 23:34:06 +0800 Subject: [PATCH 08/58] update:week01 homework --- Week_01/README.md | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/Week_01/README.md b/Week_01/README.md index f7aab03b..cef49a79 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -9,17 +9,16 @@ [leetcode-做题记录(建设中)](https://github.com/xiaoboji/j-leetcode) ### 三、本周作业 - 简单: --[x] [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) --[x] [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) --[ ] 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) --[ ] 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) --[x] [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) --[x] [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) --[x] [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) --[x] [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) --[x] [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) +- 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) +- [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) 中等: -[x] [设计循环双端队列(Facebook 在 1 年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) From 165a33d6f61dca9fe1ddcab94262b80bd95ca027 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 1 Feb 2021 00:57:03 +0800 Subject: [PATCH 09/58] add:week01 homework --- Week_01/README.md | 5 ++-- Week_01/common/ListNode.java | 9 ++++++ Week_01/homework/MergeTwoArrays.java | 25 +++++++++++++++++ Week_01/homework/MergeTwoLists.java | 41 ++++++++++++++++++++++++++++ Week_01/homework/MoveZeros.java | 25 +++++++++++++++++ Week_01/homework/PlusOne.java | 30 ++++++++++++++++++++ Week_01/homework/README.md | 11 ++++++++ Week_01/homework/TwoSum.java | 20 ++++++++++++++ 8 files changed, 164 insertions(+), 2 deletions(-) create mode 100644 Week_01/common/ListNode.java create mode 100644 Week_01/homework/MergeTwoArrays.java create mode 100644 Week_01/homework/MergeTwoLists.java create mode 100644 Week_01/homework/MoveZeros.java create mode 100644 Week_01/homework/PlusOne.java create mode 100644 Week_01/homework/TwoSum.java diff --git a/Week_01/README.md b/Week_01/README.md index cef49a79..1cc3c567 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -21,10 +21,11 @@ - [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) 中等: --[x] [设计循环双端队列(Facebook 在 1 年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [设计循环双端队列(Facebook 在 1 年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) 困难: --[ ] 接雨水(亚马逊、字节跳动、高盛集团、Facebook 在半年内面试常考) + +- 接雨水(亚马逊、字节跳动、高盛集团、Facebook 在半年内面试常考) ### 四、心得及小结 心得 diff --git a/Week_01/common/ListNode.java b/Week_01/common/ListNode.java new file mode 100644 index 00000000..eecc44e4 --- /dev/null +++ b/Week_01/common/ListNode.java @@ -0,0 +1,9 @@ +package Week_01.common; + +public class ListNode { + public int val; + public ListNode next; + public ListNode() {} + public ListNode(int val) { this.val = val; } + public ListNode(int val, ListNode next) { this.val = val; this.next = next; } +} diff --git a/Week_01/homework/MergeTwoArrays.java b/Week_01/homework/MergeTwoArrays.java new file mode 100644 index 00000000..04956aaa --- /dev/null +++ b/Week_01/homework/MergeTwoArrays.java @@ -0,0 +1,25 @@ +package Week_01.homework; + +/** + * @program: algorithm024 + * @description: 合并两个有序数组 + * @author: xiaoboji + * @create: 2021-02-01 00:32 + **/ +public class MergeTwoArrays { + + public void merge(int[] nums1, int m, int[] nums2, int n) { + while(n>0 && m>0){ + if(nums1[m-1] > nums2[n-1]){ + nums1[n+m-1] = nums1[m-1]; + m--; + }else{ + nums1[n+m-1] = nums2[n-1]; + n--; + } + } + for(int i = 0;i < n;i++){ + nums1[i] = nums2[i]; + } + } +} diff --git a/Week_01/homework/MergeTwoLists.java b/Week_01/homework/MergeTwoLists.java new file mode 100644 index 00000000..a6174133 --- /dev/null +++ b/Week_01/homework/MergeTwoLists.java @@ -0,0 +1,41 @@ +package Week_01.homework; + +import Week_01.common.ListNode; + +/** + * @program: algorithm024 + * @description: 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 + * @author: xiaoboji + * @create: 2021-01-31 23:50 + **/ +public class MergeTwoLists { + public ListNode mergeTwoLists(ListNode l1, ListNode l2) { + // 一些边界判断 + if(l1 == null){ + return l2; + } + if(l2 == null){ + return l1; + } + + // 链表技巧,使用头结点 + ListNode pre = new ListNode(-1); + ListNode head = pre; + + // 逐个比较,添加到pre链表去 + while(l1.next != null && l2.next != null){ + if(l1.val < l2.val){ + pre.next = l1; + l1 = l1.next; + } else { + pre.next = l2; + l2 = l2.next; + } + pre = pre.next; + + } + // 循环结束l1或者l2有尾巴 + pre.next = (l1==null? l2:l1); + return head.next; + } +} diff --git a/Week_01/homework/MoveZeros.java b/Week_01/homework/MoveZeros.java new file mode 100644 index 00000000..fbd690ab --- /dev/null +++ b/Week_01/homework/MoveZeros.java @@ -0,0 +1,25 @@ +package Week_01.homework; + +/** + * @program: algorithm024 + * @description: 移动零 + * @author: xiaoboji + * @create: 2021-02-01 00:54 + **/ +public class MoveZeros { + // 快慢指针,类似于快排思想 + public void moveZeroes(int[] nums) { + if(nums.length == 0){ + return; + } + int j = 0; + for (int i = 0; i < nums.length; i++) { + if(nums[i] != 0){ + int temp = -1; + temp = nums[i]; + nums[i] = nums[j]; + nums[j++] = temp; + } + } + } +} diff --git a/Week_01/homework/PlusOne.java b/Week_01/homework/PlusOne.java new file mode 100644 index 00000000..b82fafb5 --- /dev/null +++ b/Week_01/homework/PlusOne.java @@ -0,0 +1,30 @@ +package Week_01.homework; + +/** + * @program: algorithm024 + * @description: 加一 + * @author: xiaoboji + * @create: 2021-02-01 00:55 + **/ +public class PlusOne { + public int[] plusOne(int[] digits) { + //找到重复单元 +1 或者进一位 + for (int i = digits.length -1 ; i >= 0; i--){ + if(digits[i] < 9 ){ + digits[i] = digits[i] + 1; + } else { + digits[i] = 0; + } + + if(digits[i] != 0){ + return digits; + } + } + //处理999这种特殊情况 + if(digits[0] == 0){ + digits = new int[digits.length + 1]; + digits[0] = 1; + } + return digits; + } +} diff --git a/Week_01/homework/README.md b/Week_01/homework/README.md index 86bfa1d9..3208e02b 100644 --- a/Week_01/homework/README.md +++ b/Week_01/homework/README.md @@ -80,7 +80,18 @@ Deque:[10000, 20000, 30000]
- 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) - 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) - [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + * [迭代法](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoLists.java) + + 边界条件判断 + + 技巧,使用头结点和临时节点,头结点链接临时节点 + + 逐个比较,放进临时节点链表里 + + 输出头结点的后一个节点 + * 递归法 + - [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoArrays.java) - [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/TwoSum.java) - [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MoveZeros.java) - [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/PlusOne.java) \ No newline at end of file diff --git a/Week_01/homework/TwoSum.java b/Week_01/homework/TwoSum.java new file mode 100644 index 00000000..0a0560eb --- /dev/null +++ b/Week_01/homework/TwoSum.java @@ -0,0 +1,20 @@ +package Week_01.homework; + +/** + * @program: algorithm024 + * @description: 两数之和 + * @author: xiaoboji + * @create: 2021-02-01 00:53 + **/ +public class TwoSum { + public int[] twoSum(int[] nums, int target) { + for(int i = 0; i < nums.length; i++){ + for (int j = i + 1; j < nums.length; j++){ + if(nums[i] + nums[j] == target){ + return new int[]{i, j}; + } + } + } + return null; + } +} From edfe1ded1b163a854665feaf43467cce744960be Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 1 Feb 2021 20:59:50 +0800 Subject: [PATCH 10/58] update:week01 homework --- Week_01/homework/MoveZeros.java | 2 + Week_01/homework/PlusOne.java | 26 ++++----- Week_01/homework/README.md | 98 +++++++++++++++++++++++++++++---- 3 files changed, 99 insertions(+), 27 deletions(-) diff --git a/Week_01/homework/MoveZeros.java b/Week_01/homework/MoveZeros.java index fbd690ab..b108f6a4 100644 --- a/Week_01/homework/MoveZeros.java +++ b/Week_01/homework/MoveZeros.java @@ -22,4 +22,6 @@ public void moveZeroes(int[] nums) { } } } + + } diff --git a/Week_01/homework/PlusOne.java b/Week_01/homework/PlusOne.java index b82fafb5..a4bb838f 100644 --- a/Week_01/homework/PlusOne.java +++ b/Week_01/homework/PlusOne.java @@ -8,23 +8,19 @@ **/ public class PlusOne { public int[] plusOne(int[] digits) { - //找到重复单元 +1 或者进一位 - for (int i = digits.length -1 ; i >= 0; i--){ - if(digits[i] < 9 ){ - digits[i] = digits[i] + 1; - } else { - digits[i] = 0; - } - - if(digits[i] != 0){ + // 两种情况9和非9,非9直接返回,9的话需要进位 + for (int i = 0; i < digits.length; i++){ + if(digits[digits.length - 1 - i] != 9){ + digits[digits.length - 1 - i]++; return digits; + } else { + digits[digits.length - 1 - i] = 0; } } - //处理999这种特殊情况 - if(digits[0] == 0){ - digits = new int[digits.length + 1]; - digits[0] = 1; - } - return digits; + + // 处理999的情况 + int[] result = new int[digits.length + 1]; + result[0] = 1; + return result; } } diff --git a/Week_01/homework/README.md b/Week_01/homework/README.md index 3208e02b..ad0c21f2 100644 --- a/Week_01/homework/README.md +++ b/Week_01/homework/README.md @@ -1,4 +1,4 @@ -- [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +### [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) ```java public class DequeNewApiDemo { public static void main(String[] args){ @@ -30,13 +30,15 @@ public class DequeNewApiDemo { } } ``` -this program output: +output: + ``` Deque:[10000, 20000, 30000]
[D, A, E, B, C]
[A]
``` -- [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + +### [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) * 继承关系 |-Iterable(Interface)
@@ -77,9 +79,9 @@ Deque:[10000, 20000, 30000]
+ [Java8 PriorityQueue 源码阅读](https://blog.csdn.net/codejas/article/details/85144502) + [Queue Interface In Java](https://www.geeksforgeeks.org/queue-interface-java/) -- 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) -- 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) -- [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +### 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) +### 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) +### [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) * [迭代法](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoLists.java) + 边界条件判断 + 技巧,使用头结点和临时节点,头结点链接临时节点 @@ -87,11 +89,83 @@ Deque:[10000, 20000, 30000]
+ 输出头结点的后一个节点 * 递归法 -- [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +### [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoArrays.java) -- [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +### [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/TwoSum.java) -- [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MoveZeros.java) -- [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/PlusOne.java) \ No newline at end of file +### [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) + +- [代码链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MoveZeros.java) +- 方法一 + * 类似于选择排序,暴力解法 + * 每次都选择前面的一个0和后面的一个非0进行交换 + ```java + class Solution { + public void moveZeroes(int[] nums) { + int len = nums.length; + // 暴力循环法,类似于选择排序 + for (int i = 0; i < len; i++){ + for (int j = i; j < len ; j++){ + if(nums[i] == 0 && nums[j] != 0){ + int temp = nums[i]; + nums[i] = nums[j]; + nums[j] = temp; + } + } + } + } + } +``` +- 方法二 + * 类似于快排 + * 把非0的逐个找出按顺序放在最前面 + * 后面的逐个置零 + +```java + class Solution { + public void moveZeroes(int[] nums) { + int len = nums.length; + // 类似于快排,把非0逐个放左边 + int j = 0; + for (int i = 0; i < len; i++){ + if(nums[i] != 0){ + nums[j] = nums[i]; + j++; + } + } + // 后面的逐个置0 + for (;j < len; j++ ){ + nums[j] = 0; + } + } + } +``` + +### [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [代码链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/PlusOne.java) +- 思路(常规递归) + * 分析得到,有两种情况,9和非9 + * 从最后一位循环,非9的话,直接+1返回 + * 否则进位 + * 单独处理一下999这种情况 + * 循环一遍,时间复杂度O(n),空间复杂度O(1) + +```java +public class Solution { + public int[] plusOne(int[] digits) { + // 两种情况9和非9,非9直接返回,9的话需要进位 + for (int i = 0; i < digits.length; i++){ + if(digits[digits.length - 1 - i] != 9){ + digits[digits.length - 1 - i]++; + return digits; + } else { + digits[digits.length - 1 - i] = 0; + } + } + // 处理999的情况 + int[] result = new int[digits.length + 1]; + result[0] = 1; + return result; + } +} +``` \ No newline at end of file From b07d9ca44ed9c3d3409febc052b4f92e52161d86 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 1 Feb 2021 23:12:47 +0800 Subject: [PATCH 11/58] update:week01 homework --- Week_01/README.md | 13 ++- Week_01/homework/README.md | 162 +++++++++---------------------------- 2 files changed, 42 insertions(+), 133 deletions(-) diff --git a/Week_01/README.md b/Week_01/README.md index 1cc3c567..a0484483 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -14,17 +14,16 @@ - [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) - 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) -- [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoLists.java) +- [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeArrays.java) +- [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/TwoSum.java) +- [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_005_283_move_zeros) +- [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_002_66_plus_one) 中等: -- [设计循环双端队列(Facebook 在 1 年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- 设计循环双端队列(Facebook 在 1 年内面试中考过) 困难: - - 接雨水(亚马逊、字节跳动、高盛集团、Facebook 在半年内面试常考) ### 四、心得及小结 diff --git a/Week_01/homework/README.md b/Week_01/homework/README.md index ad0c21f2..c3ae98d8 100644 --- a/Week_01/homework/README.md +++ b/Week_01/homework/README.md @@ -39,133 +39,43 @@ Deque:[10000, 20000, 30000]
``` ### [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - * 继承关系 - - |-Iterable(Interface)
- |----Collection(Interface)
- |-------Queue(Interface)
- |----------Deque(Interface)
- |-------------LinkedList(Class)
- |-------------ArrayList(Class)
- |----------PriorityQueue(Class)
- - * Queue接口,相关方法如下所示 - + add(E e):将指定的元素插入到此队列中如果当前没有可用空间,则抛出IllegalStateException - + element:检索,但不删除,这个队列的头。 - + offer(E e):如果在不违反容量限制的情况下立即执行,则将指定的元素插入到此队列中。 - + peek:检索但不删除此队列的头,如果此队列为空,则返回 null - + poll:检索并删除此队列的头,如果此队列为空,则返回 null - + remove:检索并删除此队列的头 +- 继承关系 + + |-Iterable(Interface)
+ |----Collection(Interface)
+ |-------Queue(Interface)
+ |----------Deque(Interface)
+ |-------------LinkedList(Class)
+ |-------------ArrayList(Class)
+ |----------PriorityQueue(Class)
- * PriorityQueue - + 简介 - - 优先队列。优先队列的作用是能保证每次取出的元素都是队列中权值最小的。这里牵涉到了大小关系,元素大小的评判可以通过元素本身的自然顺序,也可以通过构造时传入的比较器. - - Java中PriorityQueue实现了Queue接口,不允许放入null元素;其通过堆实现,具体说是通过完全二叉树(complete binary tree)实现的小顶堆(任意一个非叶子节点的权值,都不大于其左右子节点的权值),也就意味着可以通过数组来作为PriorityQueue的底层实现。 - - + 关键点 - - 由于插入元素有优先级,所有有一个比较器的东西。其中的插入和弹出都做了自己的特有的处理,关键入口函数是siftUp和siftDown,这两个函数里面进行一些优先级的比较 - - + 方法列表 - + add:添加元素到队列中,队列满了会抛异常,其中调用offer函数进行插入 - + offer:插入元素到队列中,空就抛异常,原本没有元素就直接插入,有就调用siftUp函数进行插入 - + peek:直接返回头部元素 - + poll:获取并移除头部元素,siftDown函数返回数据 - + remove:其中调用了siftDown函数进行一些处理,移除头部元素 - + 参考链接 - + [深入理解Java PriorityQueue](https://www.cnblogs.com/CarpenterLee/p/5488070.html) - + [Java8 PriorityQueue 源码阅读](https://blog.csdn.net/codejas/article/details/85144502) - + [Queue Interface In Java](https://www.geeksforgeeks.org/queue-interface-java/) - -### 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) -### 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) -### [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - * [迭代法](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoLists.java) - + 边界条件判断 - + 技巧,使用头结点和临时节点,头结点链接临时节点 - + 逐个比较,放进临时节点链表里 - + 输出头结点的后一个节点 - * 递归法 +- Queue接口,相关方法如下所示 + * add(E e):将指定的元素插入到此队列中如果当前没有可用空间,则抛出IllegalStateException + * element:检索,但不删除,这个队列的头。 + * offer(E e):如果在不违反容量限制的情况下立即执行,则将指定的元素插入到此队列中。 + * peek:检索但不删除此队列的头,如果此队列为空,则返回 null + * poll:检索并删除此队列的头,如果此队列为空,则返回 null + * remove:检索并删除此队列的头 -### [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoArrays.java) -### [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - * [链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/TwoSum.java) -### [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) +- PriorityQueue + * 简介 -- [代码链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MoveZeros.java) -- 方法一 - * 类似于选择排序,暴力解法 - * 每次都选择前面的一个0和后面的一个非0进行交换 - ```java - class Solution { - public void moveZeroes(int[] nums) { - int len = nums.length; - // 暴力循环法,类似于选择排序 - for (int i = 0; i < len; i++){ - for (int j = i; j < len ; j++){ - if(nums[i] == 0 && nums[j] != 0){ - int temp = nums[i]; - nums[i] = nums[j]; - nums[j] = temp; - } - } - } - } - } -``` -- 方法二 - * 类似于快排 - * 把非0的逐个找出按顺序放在最前面 - * 后面的逐个置零 + 优先队列。优先队列的作用是能保证每次取出的元素都是队列中权值最小的。这里牵涉到了大小关系,元素大小的评判可以通过元素本身的自然顺序,也可以通过构造时传入的比较器. + + Java中PriorityQueue实现了Queue接口,不允许放入null元素;其通过堆实现,具体说是通过完全二叉树(complete binary tree)实现的小顶堆(任意一个非叶子节点的权值,都不大于其左右子节点的权值),也就意味着可以通过数组来作为PriorityQueue的底层实现。 + + * 关键点 + + 由于插入元素有优先级,所有有一个比较器的东西。其中的插入和弹出都做了自己的特有的处理,关键入口函数是siftUp和siftDown,这两个函数里面进行一些优先级的比较 + + * 方法列表 + + add:添加元素到队列中,队列满了会抛异常,其中调用offer函数进行插入 + + offer:插入元素到队列中,空就抛异常,原本没有元素就直接插入,有就调用siftUp函数进行插入 + + peek:直接返回头部元素 + + poll:获取并移除头部元素,siftDown函数返回数据 + + remove:其中调用了siftDown函数进行一些处理,移除头部元素 + * 参考链接 + + [深入理解Java PriorityQueue](https://www.cnblogs.com/CarpenterLee/p/5488070.html) + + [Java8 PriorityQueue 源码阅读](https://blog.csdn.net/codejas/article/details/85144502) + + [Queue Interface In Java](https://www.geeksforgeeks.org/queue-interface-java/) -```java - class Solution { - public void moveZeroes(int[] nums) { - int len = nums.length; - // 类似于快排,把非0逐个放左边 - int j = 0; - for (int i = 0; i < len; i++){ - if(nums[i] != 0){ - nums[j] = nums[i]; - j++; - } - } - // 后面的逐个置0 - for (;j < len; j++ ){ - nums[j] = 0; - } - } - } -``` - -### [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- [代码链接](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/PlusOne.java) -- 思路(常规递归) - * 分析得到,有两种情况,9和非9 - * 从最后一位循环,非9的话,直接+1返回 - * 否则进位 - * 单独处理一下999这种情况 - * 循环一遍,时间复杂度O(n),空间复杂度O(1) - -```java -public class Solution { - public int[] plusOne(int[] digits) { - // 两种情况9和非9,非9直接返回,9的话需要进位 - for (int i = 0; i < digits.length; i++){ - if(digits[digits.length - 1 - i] != 9){ - digits[digits.length - 1 - i]++; - return digits; - } else { - digits[digits.length - 1 - i] = 0; - } - } - // 处理999的情况 - int[] result = new int[digits.length + 1]; - result[0] = 1; - return result; - } -} -``` \ No newline at end of file From 078fce3a040d1f977131cb4b5b4536ed602a47bc Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 1 Feb 2021 23:15:14 +0800 Subject: [PATCH 12/58] udpate:week01 homework --- Week_01/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Week_01/README.md b/Week_01/README.md index a0484483..40f3e3af 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -15,7 +15,7 @@ - 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) - 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) - [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoLists.java) -- [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeArrays.java) +- [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoArrays.java) - [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/TwoSum.java) - [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_005_283_move_zeros) - [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_002_66_plus_one) @@ -39,4 +39,4 @@ ### 五、疑问及困惑 - 对于链表的指针没有理解透彻,时长犯晕 pre = pre.next、pre.next = pre.next.next? -- 很多题都有很多种解法,对于参考来说,我们需要看几种解法就够了? \ No newline at end of file +- 很多题都有很多种解法,对于参考来说,我们需要看几种解法就够了? From 8c8d1c78cee4903dde1c7a90bb4ae107a66993e2 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 1 Feb 2021 23:51:24 +0800 Subject: [PATCH 13/58] update:week01 homework --- Week_01/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Week_01/README.md b/Week_01/README.md index a0484483..60f66d84 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -12,7 +12,7 @@ 简单: - [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) -- 删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过) +- [删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_016_26_remove_duplicates_from_sorted_array) - 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) - [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoLists.java) - [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeArrays.java) From ae64e323f18d6fed9d99d6017cd8b02898e96e8e Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 1 Feb 2021 23:52:38 +0800 Subject: [PATCH 14/58] update:week01 homework --- Week_01/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Week_01/README.md b/Week_01/README.md index 654beda4..de8204eb 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -30,7 +30,7 @@ 心得 - 五毒神掌5分钟限时贯彻不彻底,还是会和题目杠上,最后又是一地鸡毛 - 五毒神掌重复刷题贯彻不彻底,目前还是一遍的居多,需要按艾宾浩斯记忆法第0天/+1天/+3天/+7天/+30天 -- 第一遍参考别人的代码,有时候直接抄过来,其实没有理解,抄完了其实没有做完,需要理解清除 +- 第一遍参考别人的代码,有时候直接抄过来,其实没有理解,抄完了其实没有做完,需要理解清楚 本周小结 - Arrays.asList()不能直接作用于基本数据类型如int,asList接收的是一个泛型变长参数,而我们知道基本类型是不能泛型化的,就是说8种基本类型不能作为泛型参数,要想作为泛型参数就要使用其所对应的包装类。 From aadc7c31ef736f159d35a503f561428c8d9e04af Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 2 Feb 2021 20:02:39 +0800 Subject: [PATCH 15/58] update:readme --- Week_01/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Week_01/README.md b/Week_01/README.md index de8204eb..19be3405 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -13,7 +13,7 @@ - [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - [删除排序数组中的重复项(Facebook、字节跳动、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_016_26_remove_duplicates_from_sorted_array) -- 旋转数组(微软、亚马逊、PayPal 在半年内面试中考过) +- [旋转数组(微软、亚马逊、PayPal 在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_017_189_rotate_array) - [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoLists.java) - [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoArrays.java) - [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/TwoSum.java) From 804d987e26c0209bc1720cd4fbde7db3e1a7c83d Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sat, 6 Feb 2021 00:01:52 +0800 Subject: [PATCH 16/58] update: Readme --- README.md | 45 +++++++++++++++++++++------------------------ 1 file changed, 21 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index 4d40aca4..0f8dd6ff 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,21 @@ -# 极客大学「算法训练营-第24期」作业提交仓库 - - - -## 仓库目录结构说明 - -1. `week01/` 代表第一周作业提交目录,以此类推。 -2. 请在对应周的目录下新建或修改自己的代码作业。 -2. 每周均有一个 `README.md` 文档,你可以将自己当周的学习心得以及做题过程中的思考记录在该文档中。 - -## 作业提交规则 - -1. 先将本仓库 Fork 到自己 GitHub 账号下。 -2. 将 Fork 后的仓库 Clone 到本地,然后在本地仓库中对应周的目录下新建或修改自己的代码作业,当周的学习总结写在对应周的README.md文件里。 -3. 在本地仓库完成作业后,push 到自己的 GitHub 远程仓库。 -4. 最后将远程仓库中当周的作业链接,按格式贴到班级仓库对应学习周的issue下面。 -5. 提交issue请务必按照规定格式进行提交,否则作业统计工具将抓取不到你的作业提交记录。 - -详细的作业提交流程可以查阅:https://shimo.im/docs/m5rtM8K8rNsjw5jk/ - - -## 注意事项 - - 如果对 Git 和 GitHub 不太了解,请参考 [Git 官方文档](https://git-scm.com/book/zh/v2) 或者极客时间的[《玩转 Git 三剑客》](https://time.geekbang.org/course/intro/145)视频课程。 +# 极客大学「算法训练营-第24期」 + + + +学习记录 +- [数组、链表、跳表、栈、队列](https://github.com/xiaoboji/algorithm024/tree/main/Week_01) +- [哈希、树、堆、图](https://github.com/xiaoboji/algorithm024/tree/main/Week_02) + +学习要点 +- 五毒神掌,五遍刷题法,强调练习算法题要过遍数,算法题不仅是做一遍通过而已,而是要通过刻意练习达到对算法熟练的效果。 + * 五分钟没思路,直接看优秀题解 + * 第一遍可以参考优秀答案 + * 第二遍自己默写,比较国内优秀解法 + * 第三遍看国际站,比较国际优秀解法 + * 第四遍默写+总结,记录优秀的解法 + * 第五遍用时快速熟悉 +- 四步解题 + * 沟通题目 + * 自顶向下? + * 边界图解 + * 测试用例 \ No newline at end of file From 2635ddb8677f728cf5d7889eeea503b66d3516f6 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sat, 6 Feb 2021 16:09:46 +0800 Subject: [PATCH 17/58] update:week01 homework --- Week_01/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Week_01/README.md b/Week_01/README.md index 19be3405..ba544459 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -16,7 +16,7 @@ - [旋转数组(微软、亚马逊、PayPal 在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_017_189_rotate_array) - [合并两个有序链表(亚马逊、字节跳动在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoLists.java) - [合并两个有序数组(Facebook 在半年内面试常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/MergeTwoArrays.java) -- [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework/TwoSum.java) +- [两数之和(亚马逊、字节跳动、谷歌、Facebook、苹果、微软在半年内面试中高频常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_003_1_two_sum) - [移动零(Facebook、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_005_283_move_zeros) - [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_002_66_plus_one) From e0457aaab8be3958b3d5de19a03f271c0455fffd Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sat, 6 Feb 2021 16:20:58 +0800 Subject: [PATCH 18/58] update:readme --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 0f8dd6ff..d34d3d5f 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,6 @@ * 第五遍用时快速熟悉 - 四步解题 * 沟通题目 - * 自顶向下? - * 边界图解 - * 测试用例 \ No newline at end of file + * 自顶向下+边界+图解 + * 时间空间复杂度分析 + * 测试用例 From 00beef0fbddf097ffa7f987917b848cc34881780 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 7 Feb 2021 17:44:06 +0800 Subject: [PATCH 19/58] create:week02 homework --- Week_02/README.md | 25 ++++++++++++++++++++++++- Week_02/note/README.md | 10 ++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 Week_02/note/README.md diff --git a/Week_02/README.md b/Week_02/README.md index 9f52e89d..6f7de4ad 100644 --- a/Week_02/README.md +++ b/Week_02/README.md @@ -1,5 +1,28 @@ +本周学习了哈希、树、堆、图 + # 一、学习笔记 + + # 二、本周作业 -# 三、小结 \ No newline at end of file +简单: +- [写一个关于HashMap的小总结] +- [有效的字母异位词(亚马逊、Facebook、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_019_242_valid_anagram) +- [两数之和(非常多)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_003_1_two_sum) +- [N叉树的前序遍历(亚马逊在半年内面试中考过)] +- [HeapSort自学] + +中等: +- [字母异位词分组(亚马逊在半年内面试中常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_020_49_group_anagrams) +- [二叉树的中序遍历(亚马逊、字节跳动、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_021_94_binary_tree_inorder_traversal) +- [二叉树的前序遍历(字节跳动、谷歌、腾讯在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_022_144_binary_tree_preorder_traversal) +- [N 树的层序遍历(亚马逊在半年内面试中考过)] +- [丑数(字节跳动在半年内面试中考过)] +- [前K个高频元素(亚马逊在半年内面试中常考)] + +# 三、小结 + +- 本周可以沉淀的代码 + +- \ No newline at end of file diff --git a/Week_02/note/README.md b/Week_02/note/README.md new file mode 100644 index 00000000..dd3f2e2f --- /dev/null +++ b/Week_02/note/README.md @@ -0,0 +1,10 @@ +本周学习了哈希、树、堆、图 + +# 一、学习笔记 + + +# 二、本周作业 + + +# 三、小结 + From cee6f01cfd06ac07b55cbad6de4d02cd56da4112 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 8 Feb 2021 00:43:05 +0800 Subject: [PATCH 20/58] create:note hash --- Week_02/README.md | 3 +- Week_02/note/README.md | 63 ++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 61 insertions(+), 5 deletions(-) diff --git a/Week_02/README.md b/Week_02/README.md index 6f7de4ad..78f0f17c 100644 --- a/Week_02/README.md +++ b/Week_02/README.md @@ -1,8 +1,7 @@ 本周学习了哈希、树、堆、图 # 一、学习笔记 - - +[哈希、树、堆和图基础知识](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/note) # 二、本周作业 diff --git a/Week_02/note/README.md b/Week_02/note/README.md index dd3f2e2f..dbed1bcf 100644 --- a/Week_02/note/README.md +++ b/Week_02/note/README.md @@ -1,10 +1,67 @@ 本周学习了哈希、树、堆、图 -# 一、学习笔记 +### 一、哈希、映射、集合 +- **hash table** -# 二、本周作业 +哈希表,也叫散列表,是根据关键码值而直接进行访问的数据结构。它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数(hash function),存放记录的数据叫做哈希表(或散列表) +- **工程实践** + * 电话号码簿 + * 用户信息表 + * 缓存(LRU Cache) + * 键值对存储(Redis) + * 安全加密(MD5,SHA,DES,AES算法等) + * 唯一标识(哈希算法可以对大数据做信息摘要,通过一个较短的二进制编码来表示很大的数据) + * 数据校验(校验数据的完整性和正确性) + * 负载均衡(一个会话粘滞(session sticky)的负载均衡算法,即在一次会话中的所有请求都路由到同一个服务器上) + * 分布式存储(利用一致性哈希算法,可以解决缓存等分布式系统的扩容、缩容导致数据大量搬移的难题) + * 数据分片(处理的海量数据进行分片,多机分布式处理,可以突破单机资源的限制) + +- **一个好的hash函数** + * 从哈希值不能反向推导出原始数据(所以哈希算法也叫单向哈希算法) + * 对输入数据非常敏感,哪怕原始数据只修改了一个bit,最后得到的哈希值也大不相同 + * 散列冲突的概率要很小,对于不同的原始数据,哈希值相同的概率很小 + * 哈希算法的执行效率要尽量的高效,针对较长的文本,能快速的计算出哈希值 + +一个比较好的hash函数的例子就是MD5算法 +``` +MD5("今天我来讲哈希算法") = bb4767201ad42c74e650c1b6c03d78fa +MD5("jiajia") = cd611a31ea969b908932d44d126d195b +``` +- **一致性hash算法** + +假设我们有 k 个机器,数据的哈希值的范围是[0, MAX]。我们将整个范围划分成 m 个小区间(m 远大于 k),每个机器负责 m/k 个小区间。 + +当有新机器加入的时候,我们就将某几个小区间的数据,从原来的机器中搬移到新的机器中。这样,既不用全部重新哈希、搬移数据,也保持了各个机器上数据数量的均衡。 + +- **时间空间复杂度分析** + +平均复杂度:查询O(1);插入O(1);删除O(1); + +最坏复杂度:查询O(n);插入O(n);删除O(n); + +- **map和set** + * map(key-value对,key值不重复) + + new HashMap() + + map.set(key,value) + + map.get(key) + + map.has(key) + + map.size() + + map.clear() + + * set(不重复元素的集合) + + new HashSet() + + set.add(value) + + set.delete(value) + + set.has(value) + +### 二、树、二叉树、二叉搜索树 + + +### 三、堆、二叉堆 + + +### 四、图 -# 三、小结 From d475f826f6d2d7771080b43e82b4d7fffb531bce Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 8 Feb 2021 01:04:20 +0800 Subject: [PATCH 21/58] create:week02 note tree --- Week_02/note/README.md | 40 ++++++++++++++++++ .../pic/50f89510ad1f7570791dd12f4e9adeb4.jpg | Bin 0 -> 38373 bytes 2 files changed, 40 insertions(+) create mode 100644 Week_02/pic/50f89510ad1f7570791dd12f4e9adeb4.jpg diff --git a/Week_02/note/README.md b/Week_02/note/README.md index dbed1bcf..d7d79b57 100644 --- a/Week_02/note/README.md +++ b/Week_02/note/README.md @@ -57,6 +57,43 @@ MD5("jiajia") = cd611a31ea969b908932d44d126d195b + set.has(value) ### 二、树、二叉树、二叉搜索树 +- **树** + +树和图都是二维的数据结构,二者的区别,是图有环,树没有环,树可以解决在单链表中查询过慢的问题。 + +Linked List是特殊化的Tree,Tree是特殊化的Graph + +树的定义 +```java +public class TreeNode { + public int val; + public TreeNode left; + public TreeNode right; + TreeNode() {} + TreeNode(int val) { this.val = val; } + TreeNode(int val, TreeNode left, TreeNode right) { + this.val = val; + this.left = left; + this.right = right; + } +} +``` + +节点的高度(Height) = 节点到叶子节点的最长路径(边数)
+节点的深度深度(Depth)= 根节点到这个节点所经历的边的个数
+节点的层树(Level) = 节点的深度 + 1
+树的高度 = 根节点的高速
+ +![Alt](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/pic/50f89510ad1f7570791dd12f4e9adeb4.jpg) + +- **树的遍历** + * 前序遍历:跟-左-右 + * 中序遍历:左-跟-右 + * 后序遍历:左-右-跟 +- **二叉树** + +- **二叉搜索树** + ### 三、堆、二叉堆 @@ -65,3 +102,6 @@ MD5("jiajia") = cd611a31ea969b908932d44d126d195b ### 四、图 +### 参考链接 + + diff --git a/Week_02/pic/50f89510ad1f7570791dd12f4e9adeb4.jpg b/Week_02/pic/50f89510ad1f7570791dd12f4e9adeb4.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e66dd639a0e5a25f84bc7dbcf15d56af84fdba35 GIT binary patch literal 38373 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 =Q0WftuJ{_0a;T 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 Date: Mon, 8 Feb 2021 01:36:04 +0800 Subject: [PATCH 22/58] update:week02 note tree --- Week_02/note/README.md | 131 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 128 insertions(+), 3 deletions(-) diff --git a/Week_02/note/README.md b/Week_02/note/README.md index d7d79b57..2b662e25 100644 --- a/Week_02/note/README.md +++ b/Week_02/note/README.md @@ -84,18 +84,142 @@ public class TreeNode { 节点的层树(Level) = 节点的深度 + 1
树的高度 = 根节点的高速
-![Alt](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/pic/50f89510ad1f7570791dd12f4e9adeb4.jpg) - - **树的遍历** * 前序遍历:跟-左-右 * 中序遍历:左-跟-右 * 后序遍历:左-右-跟 + - **二叉树** +完全二叉树是二叉树的一种特殊情况,满二叉树又是完全二叉树的一种特殊情况 + +二叉树: + +顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子节点和右子节点。 + +满二叉树: + +编号 2 的二叉树中,叶子节点全都在最底层,除了叶子节点之外,每个节点都有左右两个子节点。 + +完全二叉树: + +叶子节点都在最底下两层,最后一层的叶子节点都靠左排列,并且除了最后一层,其他层的节点个数都要达到最大,这种二叉树叫做完全二叉树。 + +二叉树的存储: + +1. 基于指针的链式存储法:每个节点有三个字段,其中一个存储数据,另外两个是指向左右子节点的指针,大部分二叉树代码都是通过这种结构来实现的。 + +2. 基于数组的顺序存储法:如果节点 X 存储在数组中下标为 i 的位置,下标为 2 * i 的位置存储的就是左子节点,下标为 2 * i + 1 的位置存储的就是右子节点。反过来,下标为 i/2 的位置存储就是它的父节点。通过这种方式,我们只要知道根节点存储的位置(一般情况下,为了方便计算子节点,根节点会存储在下标为 1 的位置),这样就可以通过下标计算,把整棵树都串起来。如果某棵二叉树是一棵完全二叉树,那用数组存储无疑是最节省内存的一种方式。 + - **二叉搜索树** +二叉查找树是二叉树中最常用的一种类型,也叫二叉搜索树。顾名思义,二叉查找树是为了实现快速查找而生的。二叉查找树要求,在树中的任意一个节点,其左子树中的每个节点的值,都要小于这个节点的值,而右子树节点的值都大于这个节点的值。 + +1. 查找: + +首先,我们看如何在二叉查找树中查找一个节点。我们先取根节点,如果它等于我们要查找的数据,那就返回。如果要查找的数据比根节点的值小,那就在左子树中递归查找;如果要查找的数据比根节点的值大,那就在右子树中递归查找。 +``` + public Node find(int data) { + Node p = tree; + while (p != null) { + if (data < p.data) p = p.left; + else if (data > p.data) p = p.right; + else return p; + } + return null; + } + +``` +2. 插入 + +二叉查找树的插入过程有点类似查找操作。新插入的数据一般都是在叶子节点上,所以我们只需要从根节点开始,依次比较要插入的数据和节点的大小关系。 + +如果要插入的数据比节点的数据大,并且节点的右子树为空,就将新数据直接插到右子节点的位置;如果不为空,就再递归遍历右子树,查找插入位置。同理,如果要插入的数据比节点数值小,并且节点的左子树为空,就将新数据插入到左子节点的位置;如果不为空,就再递归遍历左子树,查找插入位置。 + +``` +public void insert(int data) { + if (tree == null) { + tree = new Node(data); + return; + } + + Node p = tree; + while (p != null) { + if (data > p.data) { + if (p.right == null) { + p.right = new Node(data); + return; + } + p = p.right; + } else { // data < p.data + if (p.left == null) { + p.left = new Node(data); + return; + } + p = p.left; + } + } +} +``` +3. 删除 +二叉查找树的查找、插入操作都比较简单易懂,但是它的删除操作就比较复杂了 。 + +第一种情况是,如果要删除的节点没有子节点,我们只需要直接将父节点中,指向要删除节点的指针置为 null。 + +第二种情况是,如果要删除的节点只有一个子节点(只有左子节点或者右子节点),我们只需要更新父节点中,指向要删除节点的指针,让它指向要删除节点的子节点就可以了。 +第三种情况是,如果要删除的节点有两个子节点,这就比较复杂了。我们需要找到这个节点的右子树中的最小节点,把它替换到要删除的节点上。然后再删除掉这个最小节点,因为最小节点肯定没有左子节点(如果有左子结点,那就不是最小节点了),所以,我们可以应用上面两条规则来删除这个最小节点。 +``` + +public void delete(int data) { + Node p = tree; // p指向要删除的节点,初始化指向根节点 + Node pp = null; // pp记录的是p的父节点 + while (p != null && p.data != data) { + pp = p; + if (data > p.data) p = p.right; + else p = p.left; + } + if (p == null) return; // 没有找到 + + // 要删除的节点有两个子节点 + if (p.left != null && p.right != null) { // 查找右子树中最小节点 + Node minP = p.right; + Node minPP = p; // minPP表示minP的父节点 + while (minP.left != null) { + minPP = minP; + minP = minP.left; + } + p.data = minP.data; // 将minP的数据替换到p中 + p = minP; // 下面就变成了删除minP了 + pp = minPP; + } + + // 删除节点是叶子节点或者仅有一个子节点 + Node child; // p的子节点 + if (p.left != null) child = p.left; + else if (p.right != null) child = p.right; + else child = null; + + if (pp == null) tree = child; // 删除的是根节点 + else if (pp.left == p) pp.left = child; + else pp.right = child; +} +``` + +- **时间复杂度分析** + +插入:O(logN)
+删除:O(logN)
+查找:O(logN)
+ +- **红黑树** + * 红黑树中的节点,一类被标记为黑色,一类被标记为红色。除此之外,一棵红黑树还需要满足这样几个要求: + * 根节点是黑色的 + * 每个叶子节点都是黑色的空节点,也就是说,叶子节点不存储数据 + * 任何相邻的节点都不能同时为红色,也就是说,红色节点是被黑色节点隔开的 + * 每个节点,从改节点到达其可达节点的所有路径,都包含相同数目的黑色节点 + ### 三、堆、二叉堆 @@ -103,5 +227,6 @@ public class TreeNode { ### 参考链接 - +- [二叉搜索树 Demo](https://visualgo.net/zh/bst?slide=1) +- [数据结构预算法之美](https://time.geekbang.org/column/article/68334?utm_source=web&utm_medium=pinpaizhuanqu&utm_campaign=baidu&utm_term=pinpaizhuanqu&utm_content=0427) From 7e782d23080e35767fa78d9d70fc0aebafac28eb Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 8 Feb 2021 01:37:50 +0800 Subject: [PATCH 23/58] update:week02 note tree --- Week_02/note/README.md | 26 +++++++------------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/Week_02/note/README.md b/Week_02/note/README.md index 2b662e25..d5a24b5c 100644 --- a/Week_02/note/README.md +++ b/Week_02/note/README.md @@ -91,25 +91,13 @@ public class TreeNode { - **二叉树** -完全二叉树是二叉树的一种特殊情况,满二叉树又是完全二叉树的一种特殊情况 - -二叉树: - -顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子节点和右子节点。 - -满二叉树: - -编号 2 的二叉树中,叶子节点全都在最底层,除了叶子节点之外,每个节点都有左右两个子节点。 - -完全二叉树: - -叶子节点都在最底下两层,最后一层的叶子节点都靠左排列,并且除了最后一层,其他层的节点个数都要达到最大,这种二叉树叫做完全二叉树。 - -二叉树的存储: - -1. 基于指针的链式存储法:每个节点有三个字段,其中一个存储数据,另外两个是指向左右子节点的指针,大部分二叉树代码都是通过这种结构来实现的。 - -2. 基于数组的顺序存储法:如果节点 X 存储在数组中下标为 i 的位置,下标为 2 * i 的位置存储的就是左子节点,下标为 2 * i + 1 的位置存储的就是右子节点。反过来,下标为 i/2 的位置存储就是它的父节点。通过这种方式,我们只要知道根节点存储的位置(一般情况下,为了方便计算子节点,根节点会存储在下标为 1 的位置),这样就可以通过下标计算,把整棵树都串起来。如果某棵二叉树是一棵完全二叉树,那用数组存储无疑是最节省内存的一种方式。 + * 完全二叉树是二叉树的一种特殊情况,满二叉树又是完全二叉树的一种特殊情况 + * 二叉树: 顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子节点和右子节点。 + * 满二叉树: 编号 2 的二叉树中,叶子节点全都在最底层,除了叶子节点之外,每个节点都有左右两个子节点。 + * 完全二叉树: 叶子节点都在最底下两层,最后一层的叶子节点都靠左排列,并且除了最后一层,其他层的节点个数都要达到最大,这种二叉树叫做完全二叉树。 + * 二叉树的存储: + + 基于指针的链式存储法:每个节点有三个字段,其中一个存储数据,另外两个是指向左右子节点的指针,大部分二叉树代码都是通过这种结构来实现的。 + + 基于数组的顺序存储法:如果节点 X 存储在数组中下标为 i 的位置,下标为 2 * i 的位置存储的就是左子节点,下标为 2 * i + 1 的位置存储的就是右子节点。反过来,下标为 i/2 的位置存储就是它的父节点。通过这种方式,我们只要知道根节点存储的位置(一般情况下,为了方便计算子节点,根节点会存储在下标为 1 的位置),这样就可以通过下标计算,把整棵树都串起来。如果某棵二叉树是一棵完全二叉树,那用数组存储无疑是最节省内存的一种方式。 - **二叉搜索树** From 0b555c36d0aa79e725335797deabb1657f06589d Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 8 Feb 2021 15:33:30 +0800 Subject: [PATCH 24/58] udpate:week02 homework --- Week_02/homework/README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 Week_02/homework/README.md diff --git a/Week_02/homework/README.md b/Week_02/homework/README.md new file mode 100644 index 00000000..dd3f2e2f --- /dev/null +++ b/Week_02/homework/README.md @@ -0,0 +1,10 @@ +本周学习了哈希、树、堆、图 + +# 一、学习笔记 + + +# 二、本周作业 + + +# 三、小结 + From da936aa68f74696e560aa30ac598432530775b11 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 8 Feb 2021 16:57:42 +0800 Subject: [PATCH 25/58] update:week02 homework --- Week_02/README.md | 8 +++++--- Week_02/homework/HashMapTest.java | 11 +++++++++++ Week_02/homework/HastMap.md | 15 +++++++++++++++ Week_02/homework/HeapSort.md | 10 ++++++++++ 4 files changed, 41 insertions(+), 3 deletions(-) create mode 100644 Week_02/homework/HashMapTest.java create mode 100644 Week_02/homework/HastMap.md create mode 100644 Week_02/homework/HeapSort.md diff --git a/Week_02/README.md b/Week_02/README.md index 78f0f17c..712a62a8 100644 --- a/Week_02/README.md +++ b/Week_02/README.md @@ -16,12 +16,14 @@ - [字母异位词分组(亚马逊在半年内面试中常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_020_49_group_anagrams) - [二叉树的中序遍历(亚马逊、字节跳动、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_021_94_binary_tree_inorder_traversal) - [二叉树的前序遍历(字节跳动、谷歌、腾讯在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_022_144_binary_tree_preorder_traversal) -- [N 树的层序遍历(亚马逊在半年内面试中考过)] +- [N叉树的层序遍历(亚马逊在半年内面试中考过)] - [丑数(字节跳动在半年内面试中考过)] - [前K个高频元素(亚马逊在半年内面试中常考)] -# 三、小结 +# 三、心得及小结 - 本周可以沉淀的代码 -- \ No newline at end of file +- 本周学习心得 + +# 四、疑问汇总 diff --git a/Week_02/homework/HashMapTest.java b/Week_02/homework/HashMapTest.java new file mode 100644 index 00000000..a974b4a2 --- /dev/null +++ b/Week_02/homework/HashMapTest.java @@ -0,0 +1,11 @@ +package Week_02.homework; + +/** + * HashMap API Test + * + * @author jixiaobo + */ +public class HashMapTest { + + +} diff --git a/Week_02/homework/HastMap.md b/Week_02/homework/HastMap.md new file mode 100644 index 00000000..f68c801a --- /dev/null +++ b/Week_02/homework/HastMap.md @@ -0,0 +1,15 @@ +HashMap的学习笔记 + +--- +### 一、HashMap简介 + +### 二、HashMap API详解 + +### 三、HashMap Test实例 + +### 四、HashMap 关键源码解读 + +### 五、HashMap 小结 + + + diff --git a/Week_02/homework/HeapSort.md b/Week_02/homework/HeapSort.md new file mode 100644 index 00000000..dd3f2e2f --- /dev/null +++ b/Week_02/homework/HeapSort.md @@ -0,0 +1,10 @@ +本周学习了哈希、树、堆、图 + +# 一、学习笔记 + + +# 二、本周作业 + + +# 三、小结 + From a7009040fae6fee368af7c5f45df86da07365e30 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 9 Feb 2021 00:48:40 +0800 Subject: [PATCH 26/58] update:week02 homewor hashmap --- Week_02/README.md | 10 ++--- Week_02/homework/HastMap.md | 72 +++++++++++++++++++++++++++++++++--- Week_02/homework/HeapSort.md | 6 +-- 3 files changed, 75 insertions(+), 13 deletions(-) diff --git a/Week_02/README.md b/Week_02/README.md index 712a62a8..c9675585 100644 --- a/Week_02/README.md +++ b/Week_02/README.md @@ -1,12 +1,12 @@ 本周学习了哈希、树、堆、图 -# 一、学习笔记 +#### 一、学习笔记 [哈希、树、堆和图基础知识](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/note) -# 二、本周作业 +#### 二、本周作业 简单: -- [写一个关于HashMap的小总结] +- [写一个关于HashMap的小总结](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/homework/HashMap.md) - [有效的字母异位词(亚马逊、Facebook、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_019_242_valid_anagram) - [两数之和(非常多)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_003_1_two_sum) - [N叉树的前序遍历(亚马逊在半年内面试中考过)] @@ -20,10 +20,10 @@ - [丑数(字节跳动在半年内面试中考过)] - [前K个高频元素(亚马逊在半年内面试中常考)] -# 三、心得及小结 +#### 三、心得及小结 - 本周可以沉淀的代码 - 本周学习心得 -# 四、疑问汇总 +#### 四、疑问汇总 diff --git a/Week_02/homework/HastMap.md b/Week_02/homework/HastMap.md index f68c801a..f5817f17 100644 --- a/Week_02/homework/HastMap.md +++ b/Week_02/homework/HastMap.md @@ -1,15 +1,77 @@ HashMap的学习笔记 --- -### 一、HashMap简介 +#### 一、HashMap简介 +> public class HashMap extends AbstractMap implements Map, Cloneable, Serializable -### 二、HashMap API详解 +集成了AbstractMap抽象类,实现了Map,Cloneable,Serializable接口 -### 三、HashMap Test实例 +> Hash table based implementation of the Map interface. This implementation provides all of the optional map operations, and permits null values and the null key. (The HashMap class is roughly equivalent to Hashtable, except that it is unsynchronized and permits nulls.) This class makes no guarantees as to the order of the map; in particular, it does not guarantee that the order will remain constant over time. -### 四、HashMap 关键源码解读 +基于Hash表实现的MAP接口,实现了所有可选的的map操作,允许null值和null键.(HashMap类似于hashtable,不同之处在于hashmap是线程不安全的,并且允许空值),hashmap不保证顺序,具体点,不保证随时间推移,内部顺序保持不变。 -### 五、HashMap 小结 +> This implementation provides constant-time performance for the basic operations (get and put), assuming the hash function disperses the elements properly among the buckets. Iteration over collection views requires time proportional to the "capacity" of the HashMap instance (the number of buckets) plus its size (the number of key-value mappings). Thus, it's very important not to set the initial capacity too high (or the load factor too low) if iteration performance is important. + +如果hash函数保证了元素均匀的分散,HashMap的常用操作(get和put)可以达到常数时间的性能, + +> An instance of HashMap has two parameters that affect its performance: initial capacity and load factor. The capacity is the number of buckets in the hash table, and the initial capacity is simply the capacity at the time the hash table is created. The load factor is a measure of how full the hash table is allowed to get before its capacity is automatically increased. When the number of entries in the hash table exceeds the product of the load factor and the current capacity, the hash table is rehashed (that is, internal data structures are rebuilt) so that the hash table has approximately twice the number of buckets. + + + +> As a general rule, the default load factor (.75) offers a good tradeoff between time and space costs. Higher values decrease the space overhead but increase the lookup cost (reflected in most of the operations of the HashMap class, including get and put). The expected number of entries in the map and its load factor should be taken into account when setting its initial capacity, so as to minimize the number of rehash operations. If the initial capacity is greater than the maximum number of entries divided by the load factor, no rehash operations will ever occur. + + + +> If many mappings are to be stored in a HashMap instance, creating it with a sufficiently large capacity will allow the mappings to be stored more efficiently than letting it perform automatic rehashing as needed to grow the table. Note that using many keys with the same hashCode() is a sure way to slow down performance of any hash table. To ameliorate impact, when keys are Comparable, this class may use comparison order among keys to help break ties. + + + +> Note that this implementation is not synchronized. If multiple threads access a hash map concurrently, and at least one of the threads modifies the map structurally, it must be synchronized externally. (A structural modification is any operation that adds or deletes one or more mappings; merely changing the value associated with a key that an instance already contains is not a structural modification.) This is typically accomplished by synchronizing on some object that naturally encapsulates the map. If no such object exists, the map should be "wrapped" using the Collections.synchronizedMap method. This is best done at creation time, to prevent accidental unsynchronized access to the map: + + + +> Map m = Collections.synchronizedMap(new HashMap(...)); + + + +> The iterators returned by all of this class's "collection view methods" are fail-fast: if the map is structurally modified at any time after the iterator is created, in any way except through the iterator's own remove method, the iterator will throw a ConcurrentModificationException. Thus, in the face of concurrent modification, the iterator fails quickly and cleanly, rather than risking arbitrary, non-deterministic behavior at an undetermined time in the future. + + +> Note that the fail-fast behavior of an iterator cannot be guaranteed as it is, generally speaking, impossible to make any hard guarantees in the presence of unsynchronized concurrent modification. Fail-fast iterators throw ConcurrentModificationException on a best-effort basis. Therefore, it would be wrong to write a program that depended on this exception for its correctness: the fail-fast behavior of iterators should be used only to detect bugs. + + +#### 二、HashMap API详解 +返回类型 | 方法和描述 +-------- | ----- +void | clear()
移除map里的所有数据 +Object | clone()
返回一个hashmap的浅拷贝,具体的key值和values值不会被克隆 +V | compute(K key, BiFunction remappingFunction)
+V | computeIfAbsent(K key, Function mappingFunction)
+V | computeIfPresent(K key, BiFunction remappingFunction)
+boolean | containsKey(Object key)
如果map里包含这个key,则返回true +boolean | containsValue(Object value)
如果map里包含一个或多个key的value为这个值,则返回true +Set> | entrySet()
+void | forEach(BiConsumer action)
+V | get(Object key)
+V | getOrDefault(Object key, V defaultValue)
+boolean | isEmpty()
+Set | keySet()
+V | merge(K key, V value, BiFunction remappingFunction)
+V | put(K key, V value)
+void | putAll(Map m)
+V | putIfAbsent(K key, V value)
+V | remove(Object key)
+boolean | remove(Object key, Object value)
+V | replace(K key, V value)
+boolean | replace(K key, V oldValue, V newValue)
+void | replaceAll(BiFunction function)
+int | size()
+Collection | values()
+#### 三、HashMap Test实例 + +#### 四、HashMap 关键源码解读 + +#### 五、HashMap 小结 diff --git a/Week_02/homework/HeapSort.md b/Week_02/homework/HeapSort.md index dd3f2e2f..470139ca 100644 --- a/Week_02/homework/HeapSort.md +++ b/Week_02/homework/HeapSort.md @@ -1,10 +1,10 @@ 本周学习了哈希、树、堆、图 -# 一、学习笔记 +#### 一、学习笔记 -# 二、本周作业 +#### 二、本周作业 -# 三、小结 +#### 三、小结 From 2d012ae4dc924b82c041604d54a9fb396bf58eaa Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 9 Feb 2021 00:56:59 +0800 Subject: [PATCH 27/58] update:week02 homework hashmap --- Week_02/homework/HastMap.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Week_02/homework/HastMap.md b/Week_02/homework/HastMap.md index f5817f17..e46cc41e 100644 --- a/Week_02/homework/HastMap.md +++ b/Week_02/homework/HastMap.md @@ -1,4 +1,4 @@ -HashMap的学习笔记 +HashMap的学习笔记,总结一下,顺便学学英语 --- #### 一、HashMap简介 @@ -12,7 +12,7 @@ HashMap的学习笔记 > This implementation provides constant-time performance for the basic operations (get and put), assuming the hash function disperses the elements properly among the buckets. Iteration over collection views requires time proportional to the "capacity" of the HashMap instance (the number of buckets) plus its size (the number of key-value mappings). Thus, it's very important not to set the initial capacity too high (or the load factor too low) if iteration performance is important. -如果hash函数保证了元素均匀的分散,HashMap的常用操作(get和put)可以达到常数时间的性能, +如果hash函数保证了元素均匀的分散,HashMap的常用操作(get和put)可以达到常数时间的性能,对集合进行迭代操作所需的时间,和HashMap实例的容量(桶的数量)以及大小(键值对数)成比例。所以,如果对迭代性能要求比较高的话,初始容量不要太高,装载因子不要太低。 > An instance of HashMap has two parameters that affect its performance: initial capacity and load factor. The capacity is the number of buckets in the hash table, and the initial capacity is simply the capacity at the time the hash table is created. The load factor is a measure of how full the hash table is allowed to get before its capacity is automatically increased. When the number of entries in the hash table exceeds the product of the load factor and the current capacity, the hash table is rehashed (that is, internal data structures are rebuilt) so that the hash table has approximately twice the number of buckets. From 65a3658ff9f89c50032c24cc1f0c527e31cbc770 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 9 Feb 2021 11:32:59 +0800 Subject: [PATCH 28/58] update:week02 homework hashmap --- Week_02/homework/HastMap.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/Week_02/homework/HastMap.md b/Week_02/homework/HastMap.md index e46cc41e..3d392f4f 100644 --- a/Week_02/homework/HastMap.md +++ b/Week_02/homework/HastMap.md @@ -16,29 +16,30 @@ HashMap的学习笔记,总结一下,顺便学学英语 > An instance of HashMap has two parameters that affect its performance: initial capacity and load factor. The capacity is the number of buckets in the hash table, and the initial capacity is simply the capacity at the time the hash table is created. The load factor is a measure of how full the hash table is allowed to get before its capacity is automatically increased. When the number of entries in the hash table exceeds the product of the load factor and the current capacity, the hash table is rehashed (that is, internal data structures are rebuilt) so that the hash table has approximately twice the number of buckets. - +一个hashMap的实例,有两个重要的参数影响它的性能,初始容量和负载因子。这个容量就是hash算法中桶的数量,初始容量简而言之就是刚开始创建的时候的初始容量。这个负载因子就是当hash表的容满的时候,去创建hash表的一个度量值。当hash表里的元素个数超过了当前容量*负载因子,这个hash表就会重hash(初始的hash结构会被重构),hash表会扩充到原来的大致两倍的大小。 > As a general rule, the default load factor (.75) offers a good tradeoff between time and space costs. Higher values decrease the space overhead but increase the lookup cost (reflected in most of the operations of the HashMap class, including get and put). The expected number of entries in the map and its load factor should be taken into account when setting its initial capacity, so as to minimize the number of rehash operations. If the initial capacity is greater than the maximum number of entries divided by the load factor, no rehash operations will ever occur. - +常规来说,默认的负载因子(0.75)能兼顾时间和空间的开销。负载因子越大会减少空间的消耗,但是会增加查找的消耗(影响包括get和put在内的大部分HashMap的操作)。设置这个值要综合考虑表里的数据量和负载因子,以到达最少rehash的操作次数。如果初始容量太大,将永远不会rehash(这样浪费了空间)。 > If many mappings are to be stored in a HashMap instance, creating it with a sufficiently large capacity will allow the mappings to be stored more efficiently than letting it perform automatic rehashing as needed to grow the table. Note that using many keys with the same hashCode() is a sure way to slow down performance of any hash table. To ameliorate impact, when keys are Comparable, this class may use comparison order among keys to help break ties. - +如果一个HashMap的实例需要存储很多映射关系,创建一个足够大的可以从初它的容量,比让它不停的rehash要更有效一些。很多key都有相同的hashcode会降低检索的性能。为了改善这个影响,当这些 +键值hashcode一样的时候,这个类需要比较这些减值以解决问题。 > Note that this implementation is not synchronized. If multiple threads access a hash map concurrently, and at least one of the threads modifies the map structurally, it must be synchronized externally. (A structural modification is any operation that adds or deletes one or more mappings; merely changing the value associated with a key that an instance already contains is not a structural modification.) This is typically accomplished by synchronizing on some object that naturally encapsulates the map. If no such object exists, the map should be "wrapped" using the Collections.synchronizedMap method. This is best done at creation time, to prevent accidental unsynchronized access to the map: - +需要注意的是,hashmap不是线程安全的,在多线程的条件下,有多个线程结构化修改这个map的值,那它必须在外部进行同步。(结构化修改是指,添加或者删除一个映射的相关操作,只是改变一一下值不是一个结构化修改)。通常使用同步这个对象来实现对hashmap不同步的支持。如果不存在这样的类,需要使用Collections.synchronizedMap方法,为了防止有不同步的情况出现,最好创建hashmap的时候就这么干。 > Map m = Collections.synchronizedMap(new HashMap(...)); - - > The iterators returned by all of this class's "collection view methods" are fail-fast: if the map is structurally modified at any time after the iterator is created, in any way except through the iterator's own remove method, the iterator will throw a ConcurrentModificationException. Thus, in the face of concurrent modification, the iterator fails quickly and cleanly, rather than risking arbitrary, non-deterministic behavior at an undetermined time in the future. +HashMap的所有集合视图方法返回的迭代器都满足fail-fast机制,这个迭代器创建之后,map在任何时候被修改,只能通过迭代器励的remove方法,除此之外,会抛出一个ConcurrentModificationExceprion方。因此,面对这种并发修改的场景,迭代器快速的返回失败,而不是将来会莫名其妙的爆出一个不确定的行为或者错误。 > Note that the fail-fast behavior of an iterator cannot be guaranteed as it is, generally speaking, impossible to make any hard guarantees in the presence of unsynchronized concurrent modification. Fail-fast iterators throw ConcurrentModificationException on a best-effort basis. Therefore, it would be wrong to write a program that depended on this exception for its correctness: the fail-fast behavior of iterators should be used only to detect bugs. +需要注意的是,fail-fast机制不能够保证没有问题,通常来说,也不可能完全保证对于一个不同步的去做非同步的并发修改,fail-fast迭代器尽最大努力的去抛出ConcurrentModificaitonException。因此,写程序去依赖这个异常是不低的,这个fail-fast机制应该仅仅用来解决bug。 #### 二、HashMap API详解 返回类型 | 方法和描述 From 63404e833af3cbf222408b2aee03f183876cd51f Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 9 Feb 2021 11:34:21 +0800 Subject: [PATCH 29/58] update:week02 homework hashmap --- Week_02/homework/{HastMap.md => HashMap.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Week_02/homework/{HastMap.md => HashMap.md} (100%) diff --git a/Week_02/homework/HastMap.md b/Week_02/homework/HashMap.md similarity index 100% rename from Week_02/homework/HastMap.md rename to Week_02/homework/HashMap.md From 4baab8f61bd4cd5f593af076ec19c8e2fb7e5528 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 9 Feb 2021 14:59:20 +0800 Subject: [PATCH 30/58] update:week02 homework HeapSort --- Week_02/homework/HashMap.md | 6 ++--- Week_02/homework/HeapSort.md | 23 +++++++++++++++--- .../pic/50f89510ad1f7570791dd12f4e9adeb4.jpg | Bin 38373 -> 0 bytes 3 files changed, 22 insertions(+), 7 deletions(-) delete mode 100644 Week_02/pic/50f89510ad1f7570791dd12f4e9adeb4.jpg diff --git a/Week_02/homework/HashMap.md b/Week_02/homework/HashMap.md index 3d392f4f..69fca6da 100644 --- a/Week_02/homework/HashMap.md +++ b/Week_02/homework/HashMap.md @@ -1,10 +1,10 @@ -HashMap的学习笔记,总结一下,顺便学学英语 +HashMap的学习笔记, 总结一下,顺便学学英语 --- #### 一、HashMap简介 > public class HashMap extends AbstractMap implements Map, Cloneable, Serializable -集成了AbstractMap抽象类,实现了Map,Cloneable,Serializable接口 +继承了AbstractMap抽象类,实现了Map,Cloneable,Serializable接口 > Hash table based implementation of the Map interface. This implementation provides all of the optional map operations, and permits null values and the null key. (The HashMap class is roughly equivalent to Hashtable, except that it is unsynchronized and permits nulls.) This class makes no guarantees as to the order of the map; in particular, it does not guarantee that the order will remain constant over time. @@ -39,7 +39,7 @@ HashMap的所有集合视图方法返回的迭代器都满足fail-fast机制, > Note that the fail-fast behavior of an iterator cannot be guaranteed as it is, generally speaking, impossible to make any hard guarantees in the presence of unsynchronized concurrent modification. Fail-fast iterators throw ConcurrentModificationException on a best-effort basis. Therefore, it would be wrong to write a program that depended on this exception for its correctness: the fail-fast behavior of iterators should be used only to detect bugs. -需要注意的是,fail-fast机制不能够保证没有问题,通常来说,也不可能完全保证对于一个不同步的去做非同步的并发修改,fail-fast迭代器尽最大努力的去抛出ConcurrentModificaitonException。因此,写程序去依赖这个异常是不低的,这个fail-fast机制应该仅仅用来解决bug。 +需要注意的是,fail-fast机制不能够保证没有问题,通常来说,也不可能完全保证对于一个不同步的去做非同步的并发修改,fail-fast迭代器尽最大努力的去抛出ConcurrentModificaitonException。因此,写程序去依赖这个异常是不对的,这个fail-fast机制应该仅仅用来解决bug。 #### 二、HashMap API详解 返回类型 | 方法和描述 diff --git a/Week_02/homework/HeapSort.md b/Week_02/homework/HeapSort.md index 470139ca..27c24a8f 100644 --- a/Week_02/homework/HeapSort.md +++ b/Week_02/homework/HeapSort.md @@ -1,10 +1,25 @@ -本周学习了哈希、树、堆、图 -#### 一、学习笔记 +#### 一、堆的概念 +堆是一种特殊的树 -#### 二、本周作业 +- 堆是一个完全二叉树 +- 堆中每一个节点的值都必须大于等于(或小于等于)其子树中每个节点的值。 +第一点,堆必须是一个完全二叉树。还记得我们之前讲的完全二叉树的定义吗?完全二叉树要求,除了最后一层,其他层的节点个数都是满的,最后一层的节点都靠左排列。 -#### 三、小结 +第二点,堆中的每个节点的值必须大于等于(或者小于等于)其子树中每个节点的值。实际上,我们还可以换一种说法,堆中每个节点的值都大于等于(或者小于等于)其左右子节点的值。这两种表述是等价的。 + +对于每个节点的值都大于等于子树中每个节点值的堆,我们叫做“大顶堆”。对于每个节点的值都小于等于子树中每个节点值的堆,我们叫做“小顶堆” + +#### 二、如何实现一个堆 + +完全二叉树比较适合用数组来存储。用数组来存储完全二叉树是非常节省存储空间的。因为我们不需要存储左右子节点的指针,单纯地通过数组的下标,就可以找到一个节点的左右子节点和父节点。 + + + +#### 三、堆排序 + + +#### 四、堆的应用 diff --git a/Week_02/pic/50f89510ad1f7570791dd12f4e9adeb4.jpg b/Week_02/pic/50f89510ad1f7570791dd12f4e9adeb4.jpg deleted file mode 100644 index e66dd639a0e5a25f84bc7dbcf15d56af84fdba35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38373 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 =Q0WftuJ{_0a;T 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 Date: Wed, 10 Feb 2021 00:00:01 +0800 Subject: [PATCH 31/58] update:week02 homework --- Week_02/README.md | 6 +++--- Week_02/homework/HashMapTest.java | 5 ++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Week_02/README.md b/Week_02/README.md index c9675585..27176c4b 100644 --- a/Week_02/README.md +++ b/Week_02/README.md @@ -9,14 +9,14 @@ - [写一个关于HashMap的小总结](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/homework/HashMap.md) - [有效的字母异位词(亚马逊、Facebook、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_019_242_valid_anagram) - [两数之和(非常多)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_003_1_two_sum) -- [N叉树的前序遍历(亚马逊在半年内面试中考过)] -- [HeapSort自学] +- [N叉树的前序遍历(亚马逊在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_024_589_n_ary_tree_preorder_traversal) +- [HeapSort自学](https://github.com/xiaoboji/algorithm024/blob/main/Week_02/homework/HeapSort.md) 中等: - [字母异位词分组(亚马逊在半年内面试中常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_020_49_group_anagrams) - [二叉树的中序遍历(亚马逊、字节跳动、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_021_94_binary_tree_inorder_traversal) - [二叉树的前序遍历(字节跳动、谷歌、腾讯在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_022_144_binary_tree_preorder_traversal) -- [N叉树的层序遍历(亚马逊在半年内面试中考过)] +- [N叉树的层序遍历(亚马逊在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_025_429_n_ary_tree_level_traversal) - [丑数(字节跳动在半年内面试中考过)] - [前K个高频元素(亚马逊在半年内面试中常考)] diff --git a/Week_02/homework/HashMapTest.java b/Week_02/homework/HashMapTest.java index a974b4a2..b6dea85d 100644 --- a/Week_02/homework/HashMapTest.java +++ b/Week_02/homework/HashMapTest.java @@ -1,11 +1,14 @@ package Week_02.homework; +import java.util.HashMap; + /** * HashMap API Test * * @author jixiaobo */ public class HashMapTest { - + HashMap hashMap = new HashMap<>(); + // } From 254999f9b55bf85cdea8eb99616824ed2d9911ea Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Wed, 10 Feb 2021 14:30:44 +0800 Subject: [PATCH 32/58] update:hashMap --- Week_02/homework/HashMap.md | 149 +++++++++++++++++++++++++----- Week_02/homework/HashMapTest.java | 105 ++++++++++++++++++++- 2 files changed, 231 insertions(+), 23 deletions(-) diff --git a/Week_02/homework/HashMap.md b/Week_02/homework/HashMap.md index 69fca6da..539ede50 100644 --- a/Week_02/homework/HashMap.md +++ b/Week_02/homework/HashMap.md @@ -46,30 +46,137 @@ HashMap的所有集合视图方法返回的迭代器都满足fail-fast机制, -------- | ----- void | clear()
移除map里的所有数据 Object | clone()
返回一个hashmap的浅拷贝,具体的key值和values值不会被克隆 -V | compute(K key, BiFunction remappingFunction)
-V | computeIfAbsent(K key, Function mappingFunction)
-V | computeIfPresent(K key, BiFunction remappingFunction)
+V | compute(K key, BiFunction remappingFunction)
计算指定键值 +V | computeIfAbsent(K key, Function mappingFunction)
计算不存在的键值 +V | computeIfPresent(K key, BiFunction remappingFunction)
计算存在的键值 boolean | containsKey(Object key)
如果map里包含这个key,则返回true boolean | containsValue(Object value)
如果map里包含一个或多个key的value为这个值,则返回true -Set> | entrySet()
-void | forEach(BiConsumer action)
-V | get(Object key)
-V | getOrDefault(Object key, V defaultValue)
-boolean | isEmpty()
-Set | keySet()
-V | merge(K key, V value, BiFunction remappingFunction)
-V | put(K key, V value)
-void | putAll(Map m)
-V | putIfAbsent(K key, V value)
-V | remove(Object key)
-boolean | remove(Object key, Object value)
-V | replace(K key, V value)
-boolean | replace(K key, V oldValue, V newValue)
-void | replaceAll(BiFunction function)
-int | size()
-Collection | values()
+Set> | entrySet()
返回一个所有映射关系的Set +void | forEach(BiConsumer action)
一种简单的循环方式 +V | get(Object key)
获取值 +V | getOrDefault(Object key, V defaultValue)
获取值,如果不存在就返回默认值 +boolean | isEmpty()
是否为空,为空则返回ture +Set | keySet()
返回包含所有key的一个set +V | merge(K key, V value, BiFunction remappingFunction)
新老值合并指定key+value +V | put(K key, V value)
写入指定的key值 +void | putAll(Map m)
将另一个map里的值全部写入,如果有重复的key则覆盖原值 +V | putIfAbsent(K key, V value)
如果不存在则写入 +V | remove(Object key)
移除指定的key值 +boolean | remove(Object key, Object value)
移除指定的key+value +V | replace(K key, V value)
替换指定的key值 +boolean | replace(K key, V oldValue, V newValue)
替换指定的key+value值 +void | replaceAll(BiFunction function)
替换所有的value值 +int | size()
返回map的size +Collection | values()
返回所有的值的一个collection #### 三、HashMap Test实例 - +```java +/** + * HashMap API Test + * + * @author jixiaobo + */ +public class HashMapTest { + public static void main(String[] args){ + HashMap hashMap = new HashMap<>(16); + + // 存入值(>>>>:{1=A, 2=B, 3=C}) + hashMap.put("1","A"); + hashMap.put("2","B"); + hashMap.put("3","C"); + // putIfAbsent 当key不存在时添加, key存在时不做任何操作 + hashMap.putIfAbsent("1","A-putIfAbsent"); + System.out.println(hashMap); + + // 返回元素个数(>>>>:3) + int size = hashMap.size(); + System.out.println(size); + + // 获取值(>>>>:A) + String value = hashMap.get("1"); + System.out.println(value); + // 获取key值对应的value,当key不存在的时候,返回默认值(>>>>:default) + String def = hashMap.getOrDefault("5", "default"); + System.out.println(def); + + // 是否包含key/value值,是否为空(>>>>:true false false) + boolean bkey = hashMap.containsKey("1"); + boolean bvalue = hashMap.containsKey("A"); + boolean isempty = hashMap.isEmpty(); + System.out.println(bkey + " " + bvalue + " " + isempty); + + // putAll,讲一个具体的MAP中的映射关系全部复制到另一个map中,hashmap如果有相同的key,将会被覆盖(>>>>:{1=T1, 2=B, 3=C, 4=T}) + HashMap temp = new HashMap<>(2); + temp.put("4","T"); + temp.put("1","T1"); + hashMap.putAll(temp); + System.out.println(hashMap); + + // remove-移除key值或者key(>>>>:{1=T1, 3=C, 4=T}) + hashMap.remove("2"); + // remove-只有完全匹配才会被移除,下面的key=3 value=A不存在所有不被移除1 + hashMap.remove("3","A"); + System.out.println(hashMap); + + // keySet-获取hashmap中的所有key(>>>>:1 3 4 ) + Set keys = hashMap.keySet(); + for (String str : keys) { + System.out.print(str + " "); + } + System.out.println(); + + // keySet-获取hashmap中的所有值(>>>>: T1 C T ) + Collection values = hashMap.values(); + for (String str : values) { + System.out.print(str + " "); + } + System.out.println(); + + // replace-替换value的逻辑,(>>>>: {1=A-replace, 3=A-replaceAll, 4=A-replaceAll}) + hashMap.replace("1", "A+"); + // replaceAll-替换所有的值为100 + hashMap.replaceAll((k,v) -> v = "A-replaceAll"); + // replace-匹配上key+value的值之后才会被替换 + hashMap.replace("1","A-replaceAll","A-replace"); + System.out.println(hashMap); + + // entrySet-获取所有值(>>>>: 1=A-replace 3=A-replaceAll 4=A-replaceAll ) + Set> mapEvtry = hashMap.entrySet(); + for (Entry entry : mapEvtry ) { + System.out.print(entry + " "); + } + System.out.println(); + + // forEach-lambda表达式,更简单的for循环(>>>>: 1 A-replace3 A-replaceAll4 A-replaceAll) + hashMap.forEach( + (k, v) -> { + System.out.print(k + " " + v); + }); + System.out.println(); + + // merge-合并value的旧值和新值(>>>>: {1=A-replacenew, 3=A-replaceAll, 4=A-replaceAll}) + hashMap.merge("1", "new", (oldValue, newValue) -> oldValue + newValue); + System.out.println(hashMap); + + // 对不存在的key进行计算,如果是数值型 可以进行相应的数值计算(>>>>: {1=A-replacenew, 2=computeIfAbsent, 3=A-replaceAll, 4=A-replaceAll}) + hashMap.computeIfAbsent("2", (key) -> "computeIfAbsent"); + System.out.println(hashMap); + // 对存在的key进行计算,如果是数值型 可以进行相应的数值计算(>>>>:{1=A-replacenew computeIfAbsent, 2=computeIfAbsent, 3=A-replaceAll, 4=A-replaceAll} ) + hashMap.computeIfPresent("1", (key, oldvalue) -> oldvalue + " computeIfAbsent" ); + System.out.println(hashMap); + // 对指定key进行计算,不存在的时候添加,存在的时候修改(>>>>: {1=A-replacenew computeIfAbsent, 2=computeIfAbsent, 3=A-replaceAll, 4=A-replaceAll, 6=null computeIfAbsent}) + hashMap.compute("6", (key, oldvalue) -> oldvalue + " computeIfAbsent" ); + System.out.println(hashMap); + + // clone,由当前的数据浅拷贝,key和value还是一份内存地址,不会被拷贝(>>>>: {1=A-replacenew computeIfAbsent, 2=computeIfAbsent, 3=A-replaceAll, 4=A-replaceAll, 6=null computeIfAbsent}) + Object cloneMap = hashMap.clone(); + hashMap.put("1", "clone"); + hashMap.clear(); + System.out.println(cloneMap); + + } + +} +``` #### 四、HashMap 关键源码解读 #### 五、HashMap 小结 diff --git a/Week_02/homework/HashMapTest.java b/Week_02/homework/HashMapTest.java index b6dea85d..9de9ceb5 100644 --- a/Week_02/homework/HashMapTest.java +++ b/Week_02/homework/HashMapTest.java @@ -1,6 +1,11 @@ package Week_02.homework; +import java.util.Collection; +import java.util.Collections; import java.util.HashMap; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; /** * HashMap API Test @@ -8,7 +13,103 @@ * @author jixiaobo */ public class HashMapTest { - HashMap hashMap = new HashMap<>(); - // + public static void main(String[] args){ + HashMap hashMap = new HashMap<>(16); + + // 存入值(>>>>:{1=A, 2=B, 3=C}) + hashMap.put("1","A"); + hashMap.put("2","B"); + hashMap.put("3","C"); + // putIfAbsent 当key不存在时添加, key存在时不做任何操作 + hashMap.putIfAbsent("1","A-putIfAbsent"); + System.out.println(hashMap); + + // 返回元素个数(>>>>:3) + int size = hashMap.size(); + System.out.println(size); + + // 获取值(>>>>:A) + String value = hashMap.get("1"); + System.out.println(value); + // 获取key值对应的value,当key不存在的时候,返回默认值(>>>>:default) + String def = hashMap.getOrDefault("5", "default"); + System.out.println(def); + + // 是否包含key/value值,是否为空(>>>>:true false false) + boolean bkey = hashMap.containsKey("1"); + boolean bvalue = hashMap.containsKey("A"); + boolean isempty = hashMap.isEmpty(); + System.out.println(bkey + " " + bvalue + " " + isempty); + + // putAll,讲一个具体的MAP中的映射关系全部复制到另一个map中,hashmap如果有相同的key,将会被覆盖(>>>>:{1=T1, 2=B, 3=C, 4=T}) + HashMap temp = new HashMap<>(2); + temp.put("4","T"); + temp.put("1","T1"); + hashMap.putAll(temp); + System.out.println(hashMap); + + // remove-移除key值或者key(>>>>:{1=T1, 3=C, 4=T}) + hashMap.remove("2"); + // remove-只有完全匹配才会被移除,下面的key=3 value=A不存在所有不被移除1 + hashMap.remove("3","A"); + System.out.println(hashMap); + + // keySet-获取hashmap中的所有key(>>>>:1 3 4 ) + Set keys = hashMap.keySet(); + for (String str : keys) { + System.out.print(str + " "); + } + System.out.println(); + + // keySet-获取hashmap中的所有值(>>>>: T1 C T ) + Collection values = hashMap.values(); + for (String str : values) { + System.out.print(str + " "); + } + System.out.println(); + + // replace-替换value的逻辑,(>>>>: {1=A-replace, 3=A-replaceAll, 4=A-replaceAll}) + hashMap.replace("1", "A+"); + // replaceAll-替换所有的值为100 + hashMap.replaceAll((k,v) -> v = "A-replaceAll"); + // replace-匹配上key+value的值之后才会被替换 + hashMap.replace("1","A-replaceAll","A-replace"); + System.out.println(hashMap); + + // entrySet-获取所有值(>>>>: 1=A-replace 3=A-replaceAll 4=A-replaceAll ) + Set> mapEvtry = hashMap.entrySet(); + for (Entry entry : mapEvtry ) { + System.out.print(entry + " "); + } + System.out.println(); + + // forEach-lambda表达式,更简单的for循环(>>>>: 1 A-replace3 A-replaceAll4 A-replaceAll) + hashMap.forEach( + (k, v) -> { + System.out.print(k + " " + v); + }); + System.out.println(); + + // merge-合并value的旧值和新值(>>>>: {1=A-replacenew, 3=A-replaceAll, 4=A-replaceAll}) + hashMap.merge("1", "new", (oldValue, newValue) -> oldValue + newValue); + System.out.println(hashMap); + + // 对不存在的key进行计算,如果是数值型 可以进行相应的数值计算(>>>>: {1=A-replacenew, 2=computeIfAbsent, 3=A-replaceAll, 4=A-replaceAll}) + hashMap.computeIfAbsent("2", (key) -> "computeIfAbsent"); + System.out.println(hashMap); + // 对存在的key进行计算,如果是数值型 可以进行相应的数值计算(>>>>:{1=A-replacenew computeIfAbsent, 2=computeIfAbsent, 3=A-replaceAll, 4=A-replaceAll} ) + hashMap.computeIfPresent("1", (key, oldvalue) -> oldvalue + " computeIfAbsent" ); + System.out.println(hashMap); + // 对指定key进行计算,不存在的时候添加,存在的时候修改(>>>>: {1=A-replacenew computeIfAbsent, 2=computeIfAbsent, 3=A-replaceAll, 4=A-replaceAll, 6=null computeIfAbsent}) + hashMap.compute("6", (key, oldvalue) -> oldvalue + " computeIfAbsent" ); + System.out.println(hashMap); + + // clone,由当前的数据浅拷贝,key和value还是一份内存地址,不会被拷贝(>>>>: {1=A-replacenew computeIfAbsent, 2=computeIfAbsent, 3=A-replaceAll, 4=A-replaceAll, 6=null computeIfAbsent}) + Object cloneMap = hashMap.clone(); + hashMap.put("1", "clone"); + hashMap.clear(); + System.out.println(cloneMap); + + } } From e195a43d818920920df9d5fe65012008193f2395 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Thu, 11 Feb 2021 23:39:20 +0800 Subject: [PATCH 33/58] update:homework02 hashmap --- Week_02/homework/HashMap.md | 267 +++++++++++++++++++++++++++++++++++- 1 file changed, 266 insertions(+), 1 deletion(-) diff --git a/Week_02/homework/HashMap.md b/Week_02/homework/HashMap.md index 539ede50..eb03dc2c 100644 --- a/Week_02/homework/HashMap.md +++ b/Week_02/homework/HashMap.md @@ -178,8 +178,273 @@ public class HashMapTest { } ``` #### 四、HashMap 关键源码解读 +- 链表节点 +``` + /** + * Basic hash bin node, used for most entries. (See below for + * TreeNode subclass, and in LinkedHashMap for its Entry subclass.) + */ + static class Node implements Map.Entry { + final int hash;//hash值 + final K key;//key值 + V value;//value值 + Node next;//下一个节点 + + Node(int hash, K key, V value, Node next) { + this.hash = hash; + this.key = key; + this.value = value; + this.next = next; + } + + public final K getKey() { return key; } + public final V getValue() { return value; } + public final String toString() { return key + "=" + value; } + + public final int hashCode() { + // 每一个节点的hash值,是将key值的hash和value值的hash异或后的值 + return Objects.hashCode(key) ^ Objects.hashCode(value); + } + + public final V setValue(V newValue) { + V oldValue = value; + value = newValue; + return oldValue; + } + + public final boolean equals(Object o) { + if (o == this) + return true; + if (o instanceof Map.Entry) { + Map.Entry e = (Map.Entry)o; + if (Objects.equals(key, e.getKey()) && + Objects.equals(value, e.getValue())) + return true; + } + return false; + } + } +``` +hashmap的节点是使用node进行存储,使用的是一个单链表,单链表中每个节点的hash值是根据key和value的hashcode进行异或 -#### 五、HashMap 小结 +- put()函数 +``` + /** + * Implements Map.put and related methods. + * + * @param hash hash for key + * @param key the key + * @param value the value to put + * @param onlyIfAbsent if true, don't change existing value//如果onlyifAbsent为true,不会覆盖相同key的值value + * @param evict if false, the table is in creation mode.// 如果evict是false, + * @return previous value, or null if none + */ + final V putVal(int hash, K key, V value, boolean onlyIfAbsent, + boolean evict) { + // tab存储当前的hash桶,p作为临时链表节点 + Node[] tab; Node p; int n, i; + // table 被延迟到插入新数据时再进行初始化 + if ((tab = table) == null || (n = tab.length) == 0) + n = (tab = resize()).length; + // 如果桶中不包含键值对节点引用,则将新键值对节点的引用存入桶中即可 + if ((p = tab[i = (n - 1) & hash]) == null) + tab[i] = newNode(hash, key, value, null); + // 发生了hash冲突 + else { + Node e; K k; + // 如果键的值以及节点 hash 等于链表中的第一个键值对节点时,则将 e 指向该键值对 + if (p.hash == hash && + ((k = p.key) == key || (key != null && key.equals(k)))) + e = p; + // 如果hash值相同,节点又是通过红黑树存储的,则使用红黑树存储新节点 + else if (p instanceof TreeNode) + e = ((TreeNode)p).putTreeVal(this, tab, hash, key, value); + // 如果不需要覆盖,则插入一个普通的链表节点 + else { + // 对链表进行遍历,并统计链表长度 + for (int binCount = 0; ; ++binCount) { + if ((e = p.next) == null) { + // 链表中不包含要插入的键值对节点时,则将该节点接在链表的最后 + p.next = newNode(hash, key, value, null); + // 如果节点的链表数量>=8,则转换为红黑树,以增加查询效率 + if (binCount >= TREEIFY_THRESHOLD - 1) // -1 for 1st + treeifyBin(tab, hash); + break; + } + // 条件为 true,表示当前链表包含要插入的键值对,终止遍历 + if (e.hash == hash && + ((k = e.key) == key || (key != null && key.equals(k)))) + break; + p = e; + } + } + // 判断要插入的键值对是否存在 HashMap 中 + if (e != null) { // existing mapping for key + // onlyIfAbsent 表示是否仅在 oldValue 为 null 的情况下更新键值对的值 + V oldValue = e.value; + if (!onlyIfAbsent || oldValue == null) + e.value = value; + afterNodeAccess(e); + return oldValue; + } + } + // 修改modCount + ++modCount; + // 键值对数量超过阈值时,则进行扩容 + if (++size > threshold) + resize(); + afterNodeInsertion(evict); + return null; + } +``` +- 查询具体的key值 +``` + public V get(Object key) { + Node e; + // 根据key值获得hash值,根据hash值找具体的值 + return (e = getNode(hash(key), key)) == null ? null : e.value; + } + // 根据hash值和key找到目标节点ndoe + final Node getNode(int hash, Object key) { + Node[] tab; Node first, e; int n; K k; + // 如果hash表不为空,根据hash值计算出index(核心在此-->first = tab[(n - 1) & hash]) + if ((tab = table) != null && (n = tab.length) > 0 && + (first = tab[(n - 1) & hash]) != null) { + // 如果index处只有一个值,即没有hash冲突,则直接返回这个值 + if (first.hash == hash && // always check first node + ((k = first.key) == key || (key != null && key.equals(k)))) + return first; + // 如果index处有多个值 + if ((e = first.next) != null) { + // index的节点是一个树节点,则调用红黑树进行查找 + if (first instanceof TreeNode) + return ((TreeNode)first).getTreeNode(hash, key); + // 否则的话就使用链表逐个查找 + do { + if (e.hash == hash && + ((k = e.key) == key || (key != null && key.equals(k)))) + return e; + } while ((e = e.next) != null); + } + } + return null; + } +``` +- 扩容函数 +``` +final Node[] resize() { + Node[] oldTab = table; + int oldCap = (oldTab == null) ? 0 : oldTab.length; + int oldThr = threshold; + int newCap, newThr = 0; + // 如果 table 不为空,表明已经初始化过了 + if (oldCap > 0) { + // 当 table 容量超过容量最大值,则不再扩容 + if (oldCap >= MAXIMUM_CAPACITY) { + threshold = Integer.MAX_VALUE; + return oldTab; + } + // 按旧容量和阈值的2倍计算新容量和阈值的大小 + else if ((newCap = oldCap << 1) < MAXIMUM_CAPACITY && + oldCap >= DEFAULT_INITIAL_CAPACITY) + newThr = oldThr << 1; // double threshold + } else if (oldThr > 0) // initial capacity was placed in threshold + /* + * 初始化时,将 threshold 的值赋值给 newCap, + * HashMap 使用 threshold 变量暂时保存 initialCapacity 参数的值 + */ + newCap = oldThr; + else { // zero initial threshold signifies using defaults + /* + * 调用无参构造方法时,桶数组容量为默认容量, + * 阈值为默认容量与默认负载因子乘积 + */ + newCap = DEFAULT_INITIAL_CAPACITY; + newThr = (int)(DEFAULT_LOAD_FACTOR * DEFAULT_INITIAL_CAPACITY); + } + + // newThr 为 0 时,按阈值计算公式进行计算 + if (newThr == 0) { + float ft = (float)newCap * loadFactor; + newThr = (newCap < MAXIMUM_CAPACITY && ft < (float)MAXIMUM_CAPACITY ? + (int)ft : Integer.MAX_VALUE); + } + threshold = newThr; + // 创建新的桶数组,桶数组的初始化也是在这里完成的 + Node[] newTab = (Node[])new Node[newCap]; + table = newTab; + if (oldTab != null) { + // 如果旧的桶数组不为空,则遍历桶数组,并将键值对映射到新的桶数组中 + for (int j = 0; j < oldCap; ++j) { + Node e; + if ((e = oldTab[j]) != null) { + oldTab[j] = null; + if (e.next == null) + newTab[e.hash & (newCap - 1)] = e; + else if (e instanceof TreeNode) + // 重新映射时,需要对红黑树进行拆分 + ((TreeNode)e).split(this, newTab, j, oldCap); + else { // preserve order + Node loHead = null, loTail = null; + Node hiHead = null, hiTail = null; + Node next; + // 遍历链表,并将链表节点按原顺序进行分组 + do { + next = e.next; + if ((e.hash & oldCap) == 0) { + if (loTail == null) + loHead = e; + else + loTail.next = e; + loTail = e; + } + else { + if (hiTail == null) + hiHead = e; + else + hiTail.next = e; + hiTail = e; + } + } while ((e = next) != null); + // 将分组后的链表映射到新桶中 + if (loTail != null) { + loTail.next = null; + newTab[j] = loHead; + } + if (hiTail != null) { + hiTail.next = null; + newTab[j + oldCap] = hiHead; + } + } + } + } + } + return newTab; +} +``` +#### 五、HashMap 小结 +- hashmap的作用 + * HashMap 底层基于散列算法实现 + * HashMap 允许 null 键和 null 值 + * HashMap 则使用了拉链式的散列算法,并在 JDK 1.8 中引入了红黑树优化过长的链表。 + * HashMap 并不保证键值对的顺序,这意味着在进行某些操作后,键值对的顺序可能会发生变化 + * HashMap 是非线程安全类,在多线程环境下可能会存在问题 +- putval() + * 当桶数组 table 为空时,通过扩容的方式初始化 table + * 查找要插入的键值对是否已经存在,存在的话根据条件判断是否用新值替换旧值 + * 如果不存在,则将键值对链入链表中,并根据链表长度决定是否将链表转为红黑树 + * 判断键值对数量是否大于阈值,大于的话则进行扩容操作 +- get() + * 先定位键值对所在的桶的位置 + * 然后再对链表或红黑树进行查找 +- resize() + * HashMap桶数组的长度均是2的幂,阈值大小为桶数组长度与负载因子的乘积 + * 当HashMap中的键值对数量超过阈值时,进行扩容 + * 扩容之后,要重新计算键值对的位置,并把它们移动到合适的位置上去 + +#### 六、参考链接 +- [HashMap 源码详细分析(JDK1.8)](https://segmentfault.com/a/1190000012926722) +- [HashMap API文档](https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html) \ No newline at end of file From 038aeb6d48c86cc1a5121ab8d24f36b3da6c0964 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 14 Feb 2021 23:04:58 +0800 Subject: [PATCH 34/58] init:week_03 --- Week_01/README.md | 25 ++++++++++++++++------ Week_02/README.md | 19 +++++++++++++++-- Week_03/README.md | 31 ++++++++++++++++++++++++++- Week_03/note/Backtracking.md | 3 +++ Week_03/note/DivideAndConquer.md | 3 +++ Week_03/note/Recursion.md | 36 ++++++++++++++++++++++++++++++++ 6 files changed, 108 insertions(+), 9 deletions(-) create mode 100644 Week_03/note/Backtracking.md create mode 100644 Week_03/note/DivideAndConquer.md create mode 100644 Week_03/note/Recursion.md diff --git a/Week_01/README.md b/Week_01/README.md index ba544459..b868372e 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -5,10 +5,7 @@ ### 一、学习笔记 [第一周学习笔记](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note) -### 二、练习汇总 -[leetcode-做题记录(建设中)](https://github.com/xiaoboji/j-leetcode) - -### 三、本周作业 +### 二、本周作业 简单: - [用 add first 或 add last 这套新的 API 改写 Deque 的代码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) - [分析 Queue 和 Priority Queue 的源码](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/homework) @@ -21,10 +18,22 @@ - [加一(谷歌、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_002_66_plus_one) 中等: -- 设计循环双端队列(Facebook 在 1 年内面试中考过) +- [设计循环双端队列(Facebook 在 1 年内面试中考过)] 困难: -- 接雨水(亚马逊、字节跳动、高盛集团、Facebook 在半年内面试常考) +- [接雨水(亚马逊、字节跳动、高盛集团、Facebook 在半年内面试常考)] + +### 三、训练场练习 +- 数组相关: + * [选择餐馆] +- 链表相关: + * [合并两个有序链表] +- 栈相关: + * [视野总和] + * [每日在线用户量] +- 队列相关: + * [数据流查询] + ### 四、心得及小结 心得 @@ -40,3 +49,7 @@ - 对于链表的指针没有理解透彻,时长犯晕 pre = pre.next、pre.next = pre.next.next? - 很多题都有很多种解法,对于参考来说,我们需要看几种解法就够了? + + +### 六、练习汇总 +[leetcode-做题记录](https://github.com/xiaoboji/j-leetcode) \ No newline at end of file diff --git a/Week_02/README.md b/Week_02/README.md index 27176c4b..e80cb8aa 100644 --- a/Week_02/README.md +++ b/Week_02/README.md @@ -20,10 +20,25 @@ - [丑数(字节跳动在半年内面试中考过)] - [前K个高频元素(亚马逊在半年内面试中常考)] -#### 三、心得及小结 +#### 三、训练场相关 +- 哈希相关: + * [找雪花] +- 树相关: + * [安装路灯] +- 二叉搜索树相关: + * [二叉搜索树的后序遍历序列] +- 堆相关: + * [最火视频榜单] +- 图相关: + * [手游上线] +#### 四、心得及小结 - 本周可以沉淀的代码 - 本周学习心得 -#### 四、疑问汇总 +#### 五、疑问汇总 + +#### 六、练习汇总 + +[leetcode-做题记录](https://github.com/xiaoboji/j-leetcode) diff --git a/Week_03/README.md b/Week_03/README.md index 50de3041..b1248dc7 100644 --- a/Week_03/README.md +++ b/Week_03/README.md @@ -1 +1,30 @@ -学习笔记 \ No newline at end of file +#### 一、学习笔记 +- [递归](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Recursion.md) +- [分治](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/DivideAndConquer.md) +- [回溯](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Recursion.md) +#### 二、本周作业 + +- [二叉树的最近公共祖先(Facebook 在半年内面试常考)] +- [从前序与中序遍历序列构造二叉树(字节跳动、亚马逊、微软在半年内面试中考过)] +- [组合(微软、亚马逊、谷歌在半年内面试中考过)] +- [全排列(字节跳动在半年内面试常考)] +- [全排列 II (亚马逊、字节跳动、Facebook 在半年内面试中考过)] + +#### 三、训练场练习 +- 递归相关: + * [指令计算器设计] + * [赛程表问题] +- 回溯相关: + * [单词转换] +#### 四、心得及小结 + +- 本周可以沉淀的代码 + +- 本周学习心得 + +#### 五、疑问汇总 + + +#### 六、练习汇总 + +[leetcode-做题记录](https://github.com/xiaoboji/j-leetcode) \ No newline at end of file diff --git a/Week_03/note/Backtracking.md b/Week_03/note/Backtracking.md new file mode 100644 index 00000000..ba9438a9 --- /dev/null +++ b/Week_03/note/Backtracking.md @@ -0,0 +1,3 @@ +递归知识总结 +--- +- \ No newline at end of file diff --git a/Week_03/note/DivideAndConquer.md b/Week_03/note/DivideAndConquer.md new file mode 100644 index 00000000..ba9438a9 --- /dev/null +++ b/Week_03/note/DivideAndConquer.md @@ -0,0 +1,3 @@ +递归知识总结 +--- +- \ No newline at end of file diff --git a/Week_03/note/Recursion.md b/Week_03/note/Recursion.md new file mode 100644 index 00000000..41235176 --- /dev/null +++ b/Week_03/note/Recursion.md @@ -0,0 +1,36 @@ +递归知识总结 +--- +- 递归需要满足的三个条件 + + * 一个问题的解可以分解为几个子问题的解 + * 这个问题与分解之后的子问题,除了数据规模不同,求解思路完全一样 + * 存在递归终止条件 + +递归是一种非常高效、简洁的编码技巧。只要是满足“三个条件”的问题就可以通过递归代码来解决。 + +递归代码虽然简洁高效,但是,递归代码也有很多弊端。比如,堆栈溢出、重复计算、函数调用耗时多、空间复杂度高等,所以,在编写递归代码的时候,一定要控制好这些副作用。 + +- 几个关键点 + * 编写递归代码的关键是,只要遇到递归,我们就把它抽象成一个递推公式,不用想一层层的调用关系,不要试图用人脑去分解递归的每个步骤。 + * 函数调用会使用栈来保存临时变量。每调用一个函数,都会将临时变量封装为栈帧压入内存栈,等函数执行完成返回时,才出栈。系统栈或者虚拟机栈空间一般都不大。如果递归求解的数据规模很大,调用层次很深,一直压入栈,就会有堆栈溢出的风险。 + * 不要人肉进行递归 + * 找最近重复子问题 + * 数学归纳法的思维 +- Java代码模板 +``` +public void recur(int level, int param) { + //terminator + if (level > MAX_LEVEL) { + // process result + return; + } + // process current logic + process(level, param); + + // drill down + recur(level: level + 1, newParam); + + // restore current status +} +``` + \ No newline at end of file From 692a19f8277e9d0a7c5d950b288778b219118d26 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 14 Feb 2021 23:57:02 +0800 Subject: [PATCH 35/58] add:week_03 homework --- Week_03/README.md | 2 +- Week_03/note/Backtracking.md | 23 +++++++++++++++++++++-- Week_03/note/DivideAndConquer.md | 29 +++++++++++++++++++++++++++-- 3 files changed, 49 insertions(+), 5 deletions(-) diff --git a/Week_03/README.md b/Week_03/README.md index b1248dc7..b573d4c3 100644 --- a/Week_03/README.md +++ b/Week_03/README.md @@ -1,7 +1,7 @@ #### 一、学习笔记 - [递归](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Recursion.md) - [分治](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/DivideAndConquer.md) -- [回溯](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Recursion.md) +- [回溯](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Backtracking.md) #### 二、本周作业 - [二叉树的最近公共祖先(Facebook 在半年内面试常考)] diff --git a/Week_03/note/Backtracking.md b/Week_03/note/Backtracking.md index ba9438a9..e6891cd0 100644 --- a/Week_03/note/Backtracking.md +++ b/Week_03/note/Backtracking.md @@ -1,3 +1,22 @@ -递归知识总结 +回溯知识总结 --- -- \ No newline at end of file + +- 概念 + +> 回溯法采用试错的思想,它尝试分步的去解决一个问题,在分步解决问题的过程中,当它通过尝试发现现有的分步答案不能得到有效的正确的解答的时候,它将取消上一步甚至上几步的计算,再通过其它的可能的分步解答在此尝试寻找问题的答案。
+> +> 回溯法通常用最简单的递归方法来实现,在反复重复上述的步骤之后会出现两种情况
+> 1. 找到一个可能存在的正确的答案
+> 2. 在尝试了所有可能的分步方法后宣告该问题没有答案
+> +> 在最坏的情况下,回溯法会导致一次复杂度为指数时间的计算。
+ +简而言之,就是在每一层里去试就行了,最典型的是八皇后问题以及数独上面. + + +- 总结 + +回溯的处理思想,有点类似枚举搜索。我们枚举所有的解,找到满足期望的解。为了有规律地枚举所有可能的解,避免遗漏和重复,我们把问题求解的过程分为多个阶段。每个阶段,我们都会面对一个岔路口,我们先随意选一条路走,当发现这条路走不通的时候(不符合期望的解),就回退到上一个岔路口,另选一种走法继续走。 + + + diff --git a/Week_03/note/DivideAndConquer.md b/Week_03/note/DivideAndConquer.md index ba9438a9..d819c542 100644 --- a/Week_03/note/DivideAndConquer.md +++ b/Week_03/note/DivideAndConquer.md @@ -1,3 +1,28 @@ -递归知识总结 +分治知识总结 --- -- \ No newline at end of file +- 分治是一种特殊的递归,归根到底就是找重复性 + * 最优重复性:动态规划 + * 最近重复性:分治、回溯等 + +- 和递归非要说有什么差别的话,可以理解为拆分完之后,有个合并的过程 + +- 代码模板 +``` +private static int divide_conquer(Problem, problem){ + // 到达最小问题,叶子结点 + if (problem == null) { + int res = process_last_result(); + return res; + } + // 处当前逻辑,如何把这个大问题拆分成小问题 + subProlems = split_prolem(problem); + // 下探一层,解决更细节的问题 + res0 = divide_conquer(subProblems[0]); + res1 = divide_conquer(subProblems[1]); + // 对结果数据进行合并 + result = process_result(res0, res1); + // 返回结果 + return result; +} +``` + From c03c0a86190a37e5e4451e9fe13310e1db697b58 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 15 Feb 2021 14:55:14 +0800 Subject: [PATCH 36/58] =?UTF-8?q?update=EF=BC=9Aweek01=20week02=20note?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Week_01/README.md | 8 +- Week_01/note/README.md | 87 ------------------- Week_01/note/array.md | 31 +++++++ Week_01/note/list.md | 28 ++++++ Week_01/note/queue.md | 7 ++ Week_01/note/skiplist.md | 4 + Week_01/note/stack.md | 13 +++ Week_02/README.md | 7 +- Week_02/note/graph.md | 7 ++ Week_02/note/hash.md | 57 ++++++++++++ .../{homework/HeapSort.md => note/heap.md} | 12 +-- Week_02/note/{README.md => tree.md} | 71 ++------------- 12 files changed, 169 insertions(+), 163 deletions(-) delete mode 100644 Week_01/note/README.md create mode 100644 Week_01/note/array.md create mode 100644 Week_01/note/list.md create mode 100644 Week_01/note/queue.md create mode 100644 Week_01/note/skiplist.md create mode 100644 Week_01/note/stack.md create mode 100644 Week_02/note/graph.md create mode 100644 Week_02/note/hash.md rename Week_02/{homework/HeapSort.md => note/heap.md} (91%) rename Week_02/note/{README.md => tree.md} (69%) diff --git a/Week_01/README.md b/Week_01/README.md index b868372e..85f4e572 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -3,7 +3,12 @@ --- ### 一、学习笔记 -[第一周学习笔记](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note) +[数组](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/array.md) +[链表](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/list.md) +[跳表](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/skiplist.md) +[栈](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/stack.md) +[队列](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/queue.md) + ### 二、本周作业 简单: @@ -50,6 +55,5 @@ - 对于链表的指针没有理解透彻,时长犯晕 pre = pre.next、pre.next = pre.next.next? - 很多题都有很多种解法,对于参考来说,我们需要看几种解法就够了? - ### 六、练习汇总 [leetcode-做题记录](https://github.com/xiaoboji/j-leetcode) \ No newline at end of file diff --git a/Week_01/note/README.md b/Week_01/note/README.md deleted file mode 100644 index a4832c21..00000000 --- a/Week_01/note/README.md +++ /dev/null @@ -1,87 +0,0 @@ -本周主要学习了如下6种数据结构 -# 数组 - -> 经典的定义:数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。数组支持随机访问,根据下标随机访问的时间复杂度为 O(1) - -中间有三个核心概念 -- 线程表 - -线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。 - -与之相对应的是非线性表,非线性表中,数据之间并不是简单的前后关系,往往具有多前或者多后。比如二叉树、堆、图等。 -- 连续的内存空间 - -即使整体内存足够,但是数据不连续,也无法初始化需要大小的数组。 - -- 相同类型的数据 - -java中即使现在有了泛型,在泛型擦除之后,也还是具体的相同的数据类型。 - -小结: - -正是有了上述三个特点,才使得数组有了杀手锏一样的特性,随机访问。但是有利有弊,连续的内存空间和相同的数据类型,也使得数据的删除插入等操作低效,因为了保证连续性,就要移动大量的数据。 - -时间复杂度分析: - -操作 | 时间复杂度 --------- | ----- -插入 | O(N) -删除 | O(N) -修改 | O(1) -查询 | O(1) - -# 链表 - -> 链表与数组恰恰相反,它并不需要一块连续的内存空间,它通过“指针”将一组零散的内存块串联起来使用,所以如果我们申请的是100MB大小的链表,根本不会有问题。 - -- 单链表 - -只记录后继节点信息的链表,习惯性地把第一个结点叫作头结点,把最后一个结点叫作尾结点 - -- 双向链表 - -单向链表只有一个方向,结点只有一个后继指针 next 指向后面的结点。而双向链表,顾名思义,它支持两个方向,每个结点不止有一个后继指针 next 指向后面的结点,还有一个前驱指针 prev 指向前面的结点。 - -记录前后节点信息,查询比单链快,删除比单链简单,前插快,查找能类二分 - -- 循环链表 - -循环链表是一种特殊的单链表。实际上,循环链表也很简单。它跟单链表唯一的区别就在尾结点。我们知道,单链表的尾结点指针指向空地址,表示这就是最后的结点了。而循环链表的尾结点指针是指向链表的头结点。 - -和单链表相比,循环链表的优点是从链尾到链头比较方便。当要处理的数据具有环型结构特点时,就特别适合采用循环链表。比如著名的约瑟夫问题。尽管用单链表也可以实现,但是用循环链表实现的话,代码就会简洁很多。 - -时间复杂度:正好和数据想法 -操作 | 时间复杂度 --------- | ----- -插入 | O(1) -删除 | O(1) -修改 | O(N) -查询 | O(N) - -# 跳表 - -Redis对于Set的优化实现方式,必须针对有序数据,指的是加多级索引的结构,支持类似“二分”的查找算法 - -# 栈 - -后进先出,先进后出,类似于叠盘子。 - -从栈的操作特性上来看,栈是一种“操作受限”的线性表,只允许在一端插入和删除数据。从功能上来说,数组或链表确实可以替代栈,但你要知道,特定的数据结构是对特定场景的抽象,而且,数组或链表暴露了太多的操作接口,操作上的确灵活自由,但使用时就比较不可控,自然也就更容易出错。 - -栈既可以通过数组实现,也可以通过链表来实现。用数组实现的栈,我们叫作顺序栈,用链表实现的栈,我们叫作链式栈。 - -不管基于数组还是链表,入栈、出栈的时间复杂度都为 O(1) - -栈只支持两个基本操作:入栈 push()和出栈 pop() - -# 队列 - -先进先出,后进后出,类似于排队买票。 - -最基本的操作也是两个:入队 enqueue(),放一个数据到队列尾部;出队 dequeue(),从队列头部取一个元素。 - -## 总结的blog链接 - -- [数据结构与算法(一)【数组】【详解及实战】](https://xiaoboji.blog.csdn.net/article/details/107009834) -- [数据结构与算法(二)【链表】【详解及编程技巧】](https://xiaoboji.blog.csdn.net/article/details/108612136) -- [数据结构与算法(三)【栈】【详解及应用】](https://xiaoboji.blog.csdn.net/article/details/108687655) diff --git a/Week_01/note/array.md b/Week_01/note/array.md new file mode 100644 index 00000000..cba2d488 --- /dev/null +++ b/Week_01/note/array.md @@ -0,0 +1,31 @@ +数组的知识总结 +--- + +> 经典的定义:数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。数组支持随机访问,根据下标随机访问的时间复杂度为 O(1) + +中间有三个核心概念 +- 线程表 + +线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。 + +与之相对应的是非线性表,非线性表中,数据之间并不是简单的前后关系,往往具有多前或者多后。比如二叉树、堆、图等。 +- 连续的内存空间 + +即使整体内存足够,但是数据不连续,也无法初始化需要大小的数组。 + +- 相同类型的数据 + +java中即使现在有了泛型,在泛型擦除之后,也还是具体的相同的数据类型。 + +小结: + +正是有了上述三个特点,才使得数组有了杀手锏一样的特性,随机访问。但是有利有弊,连续的内存空间和相同的数据类型,也使得数据的删除插入等操作低效,因为了保证连续性,就要移动大量的数据。 + +时间复杂度分析: + +操作 | 时间复杂度 +-------- | ----- +插入 | O(N) +删除 | O(N) +修改 | O(1) +查询 | O(1) diff --git a/Week_01/note/list.md b/Week_01/note/list.md new file mode 100644 index 00000000..c43fd2cc --- /dev/null +++ b/Week_01/note/list.md @@ -0,0 +1,28 @@ +链表的知识总结 +--- + +> 链表与数组恰恰相反,它并不需要一块连续的内存空间,它通过“指针”将一组零散的内存块串联起来使用,所以如果我们申请的是100MB大小的链表,根本不会有问题。 + +- 单链表 + +只记录后继节点信息的链表,习惯性地把第一个结点叫作头结点,把最后一个结点叫作尾结点 + +- 双向链表 + +单向链表只有一个方向,结点只有一个后继指针 next 指向后面的结点。而双向链表,顾名思义,它支持两个方向,每个结点不止有一个后继指针 next 指向后面的结点,还有一个前驱指针 prev 指向前面的结点。 + +记录前后节点信息,查询比单链快,删除比单链简单,前插快,查找能类二分 + +- 循环链表 + +循环链表是一种特殊的单链表。实际上,循环链表也很简单。它跟单链表唯一的区别就在尾结点。我们知道,单链表的尾结点指针指向空地址,表示这就是最后的结点了。而循环链表的尾结点指针是指向链表的头结点。 + +和单链表相比,循环链表的优点是从链尾到链头比较方便。当要处理的数据具有环型结构特点时,就特别适合采用循环链表。比如著名的约瑟夫问题。尽管用单链表也可以实现,但是用循环链表实现的话,代码就会简洁很多。 + +时间复杂度:正好和数据想法 +操作 | 时间复杂度 +-------- | ----- +插入 | O(1) +删除 | O(1) +修改 | O(N) +查询 | O(N) diff --git a/Week_01/note/queue.md b/Week_01/note/queue.md new file mode 100644 index 00000000..e3cbae6e --- /dev/null +++ b/Week_01/note/queue.md @@ -0,0 +1,7 @@ +队列的知识总结 +--- + +先进先出,后进后出,类似于排队买票。 + +最基本的操作也是两个:入队 enqueue(),放一个数据到队列尾部;出队 dequeue(),从队列头部取一个元素。 + diff --git a/Week_01/note/skiplist.md b/Week_01/note/skiplist.md new file mode 100644 index 00000000..6b2f71fe --- /dev/null +++ b/Week_01/note/skiplist.md @@ -0,0 +1,4 @@ +跳表的知识总结 +--- + +Redis对于Set的优化实现方式,必须针对有序数据,指的是加多级索引的结构,支持类似“二分”的查找算法 diff --git a/Week_01/note/stack.md b/Week_01/note/stack.md new file mode 100644 index 00000000..5877aa4b --- /dev/null +++ b/Week_01/note/stack.md @@ -0,0 +1,13 @@ +栈的知识总结 +--- + +后进先出,先进后出,类似于叠盘子。 + +从栈的操作特性上来看,栈是一种“操作受限”的线性表,只允许在一端插入和删除数据。从功能上来说,数组或链表确实可以替代栈,但你要知道,特定的数据结构是对特定场景的抽象,而且,数组或链表暴露了太多的操作接口,操作上的确灵活自由,但使用时就比较不可控,自然也就更容易出错。 + +栈既可以通过数组实现,也可以通过链表来实现。用数组实现的栈,我们叫作顺序栈,用链表实现的栈,我们叫作链式栈。 + +不管基于数组还是链表,入栈、出栈的时间复杂度都为 O(1) + +栈只支持两个基本操作:入栈 push()和出栈 pop() + diff --git a/Week_02/README.md b/Week_02/README.md index e80cb8aa..40dc00f3 100644 --- a/Week_02/README.md +++ b/Week_02/README.md @@ -1,7 +1,10 @@ 本周学习了哈希、树、堆、图 #### 一、学习笔记 -[哈希、树、堆和图基础知识](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/note) +- [哈希、映射、集合](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/note/hash.md) +- [树、二叉树、二叉搜索树](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/note/tree.md) +- [堆和堆排序](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/note/heap.md) +- [图](https://github.com/xiaoboji/algorithm024/tree/main/Week_02/note/graph.md) #### 二、本周作业 @@ -10,7 +13,7 @@ - [有效的字母异位词(亚马逊、Facebook、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_019_242_valid_anagram) - [两数之和(非常多)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_003_1_two_sum) - [N叉树的前序遍历(亚马逊在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_024_589_n_ary_tree_preorder_traversal) -- [HeapSort自学](https://github.com/xiaoboji/algorithm024/blob/main/Week_02/homework/HeapSort.md) +- [HeapSort自学](https://github.com/xiaoboji/algorithm024/blob/main/Week_02/note/heap.md) 中等: - [字母异位词分组(亚马逊在半年内面试中常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_020_49_group_anagrams) diff --git a/Week_02/note/graph.md b/Week_02/note/graph.md new file mode 100644 index 00000000..d303dc6a --- /dev/null +++ b/Week_02/note/graph.md @@ -0,0 +1,7 @@ +图的知识总结 +--- +- + +- + +- \ No newline at end of file diff --git a/Week_02/note/hash.md b/Week_02/note/hash.md new file mode 100644 index 00000000..6ba77d40 --- /dev/null +++ b/Week_02/note/hash.md @@ -0,0 +1,57 @@ +哈希、映射、集合的知识总结 +--- + +- **hash table** + +哈希表,也叫散列表,是根据关键码值而直接进行访问的数据结构。它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数(hash function),存放记录的数据叫做哈希表(或散列表) + +- **工程实践** + * 电话号码簿 + * 用户信息表 + * 缓存(LRU Cache) + * 键值对存储(Redis) + * 安全加密(MD5,SHA,DES,AES算法等) + * 唯一标识(哈希算法可以对大数据做信息摘要,通过一个较短的二进制编码来表示很大的数据) + * 数据校验(校验数据的完整性和正确性) + * 负载均衡(一个会话粘滞(session sticky)的负载均衡算法,即在一次会话中的所有请求都路由到同一个服务器上) + * 分布式存储(利用一致性哈希算法,可以解决缓存等分布式系统的扩容、缩容导致数据大量搬移的难题) + * 数据分片(处理的海量数据进行分片,多机分布式处理,可以突破单机资源的限制) + +- **一个好的hash函数** + * 从哈希值不能反向推导出原始数据(所以哈希算法也叫单向哈希算法) + * 对输入数据非常敏感,哪怕原始数据只修改了一个bit,最后得到的哈希值也大不相同 + * 散列冲突的概率要很小,对于不同的原始数据,哈希值相同的概率很小 + * 哈希算法的执行效率要尽量的高效,针对较长的文本,能快速的计算出哈希值 + +一个比较好的hash函数的例子就是MD5算法 +``` +MD5("今天我来讲哈希算法") = bb4767201ad42c74e650c1b6c03d78fa +MD5("jiajia") = cd611a31ea969b908932d44d126d195b +``` +- **一致性hash算法** + +假设我们有 k 个机器,数据的哈希值的范围是[0, MAX]。我们将整个范围划分成 m 个小区间(m 远大于 k),每个机器负责 m/k 个小区间。 + +当有新机器加入的时候,我们就将某几个小区间的数据,从原来的机器中搬移到新的机器中。这样,既不用全部重新哈希、搬移数据,也保持了各个机器上数据数量的均衡。 + +- **时间空间复杂度分析** + +平均复杂度:查询O(1);插入O(1);删除O(1); + +最坏复杂度:查询O(n);插入O(n);删除O(n); + +- **map和set** + * map(key-value对,key值不重复) + + new HashMap() + + map.set(key,value) + + map.get(key) + + map.has(key) + + map.size() + + map.clear() + + * set(不重复元素的集合) + + new HashSet() + + set.add(value) + + set.delete(value) + + set.has(value) + \ No newline at end of file diff --git a/Week_02/homework/HeapSort.md b/Week_02/note/heap.md similarity index 91% rename from Week_02/homework/HeapSort.md rename to Week_02/note/heap.md index 27c24a8f..dbc96016 100644 --- a/Week_02/homework/HeapSort.md +++ b/Week_02/note/heap.md @@ -1,5 +1,6 @@ - -#### 一、堆的概念 +堆和二叉堆的知识总结 +--- +1. 堆的概念 堆是一种特殊的树 @@ -12,14 +13,13 @@ 对于每个节点的值都大于等于子树中每个节点值的堆,我们叫做“大顶堆”。对于每个节点的值都小于等于子树中每个节点值的堆,我们叫做“小顶堆” -#### 二、如何实现一个堆 +2. 如何实现一个堆 完全二叉树比较适合用数组来存储。用数组来存储完全二叉树是非常节省存储空间的。因为我们不需要存储左右子节点的指针,单纯地通过数组的下标,就可以找到一个节点的左右子节点和父节点。 -#### 三、堆排序 - +3. 堆排序 -#### 四、堆的应用 +4. 堆的应用 \ No newline at end of file diff --git a/Week_02/note/README.md b/Week_02/note/tree.md similarity index 69% rename from Week_02/note/README.md rename to Week_02/note/tree.md index d5a24b5c..ca54c7e3 100644 --- a/Week_02/note/README.md +++ b/Week_02/note/tree.md @@ -1,62 +1,6 @@ -本周学习了哈希、树、堆、图 - -### 一、哈希、映射、集合 - -- **hash table** - -哈希表,也叫散列表,是根据关键码值而直接进行访问的数据结构。它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数(hash function),存放记录的数据叫做哈希表(或散列表) - -- **工程实践** - * 电话号码簿 - * 用户信息表 - * 缓存(LRU Cache) - * 键值对存储(Redis) - * 安全加密(MD5,SHA,DES,AES算法等) - * 唯一标识(哈希算法可以对大数据做信息摘要,通过一个较短的二进制编码来表示很大的数据) - * 数据校验(校验数据的完整性和正确性) - * 负载均衡(一个会话粘滞(session sticky)的负载均衡算法,即在一次会话中的所有请求都路由到同一个服务器上) - * 分布式存储(利用一致性哈希算法,可以解决缓存等分布式系统的扩容、缩容导致数据大量搬移的难题) - * 数据分片(处理的海量数据进行分片,多机分布式处理,可以突破单机资源的限制) - -- **一个好的hash函数** - * 从哈希值不能反向推导出原始数据(所以哈希算法也叫单向哈希算法) - * 对输入数据非常敏感,哪怕原始数据只修改了一个bit,最后得到的哈希值也大不相同 - * 散列冲突的概率要很小,对于不同的原始数据,哈希值相同的概率很小 - * 哈希算法的执行效率要尽量的高效,针对较长的文本,能快速的计算出哈希值 - -一个比较好的hash函数的例子就是MD5算法 -``` -MD5("今天我来讲哈希算法") = bb4767201ad42c74e650c1b6c03d78fa -MD5("jiajia") = cd611a31ea969b908932d44d126d195b -``` -- **一致性hash算法** - -假设我们有 k 个机器,数据的哈希值的范围是[0, MAX]。我们将整个范围划分成 m 个小区间(m 远大于 k),每个机器负责 m/k 个小区间。 - -当有新机器加入的时候,我们就将某几个小区间的数据,从原来的机器中搬移到新的机器中。这样,既不用全部重新哈希、搬移数据,也保持了各个机器上数据数量的均衡。 - -- **时间空间复杂度分析** - -平均复杂度:查询O(1);插入O(1);删除O(1); +树、二叉树、二叉搜索树的知识总结 +--- -最坏复杂度:查询O(n);插入O(n);删除O(n); - -- **map和set** - * map(key-value对,key值不重复) - + new HashMap() - + map.set(key,value) - + map.get(key) - + map.has(key) - + map.size() - + map.clear() - - * set(不重复元素的集合) - + new HashSet() - + set.add(value) - + set.delete(value) - + set.has(value) - -### 二、树、二叉树、二叉搜索树 - **树** 树和图都是二维的数据结构,二者的区别,是图有环,树没有环,树可以解决在单链表中查询过慢的问题。 @@ -208,13 +152,8 @@ public void delete(int data) { * 任何相邻的节点都不能同时为红色,也就是说,红色节点是被黑色节点隔开的 * 每个节点,从改节点到达其可达节点的所有路径,都包含相同数目的黑色节点 -### 三、堆、二叉堆 - - -### 四、图 - -### 参考链接 -- [二叉搜索树 Demo](https://visualgo.net/zh/bst?slide=1) -- [数据结构预算法之美](https://time.geekbang.org/column/article/68334?utm_source=web&utm_medium=pinpaizhuanqu&utm_campaign=baidu&utm_term=pinpaizhuanqu&utm_content=0427) +- 参考链接 + * [二叉搜索树 Demo](https://visualgo.net/zh/bst?slide=1) + * [数据结构预算法之美](https://time.geekbang.org/column/article/68334?utm_source=web&utm_medium=pinpaizhuanqu&utm_campaign=baidu&utm_term=pinpaizhuanqu&utm_content=0427) From 04eea1bd5e17ac8c6d1409c1c50c1bf0a2dcbb51 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 15 Feb 2021 14:59:31 +0800 Subject: [PATCH 37/58] update:week01 note --- Week_01/README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Week_01/README.md b/Week_01/README.md index 85f4e572..927e1c29 100644 --- a/Week_01/README.md +++ b/Week_01/README.md @@ -3,11 +3,11 @@ --- ### 一、学习笔记 -[数组](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/array.md) -[链表](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/list.md) -[跳表](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/skiplist.md) -[栈](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/stack.md) -[队列](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/queue.md) +- [数组](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/array.md) +- [链表](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/list.md) +- [跳表](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/skiplist.md) +- [栈](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/stack.md) +- [队列](https://github.com/xiaoboji/algorithm024/blob/main/Week_01/note/queue.md) ### 二、本周作业 From 2cf915419ca52bcfc081212cbaf2538dc1594f55 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Thu, 18 Feb 2021 00:21:15 +0800 Subject: [PATCH 38/58] add:heap --- README.md | 10 +-- Week_02/README.md | 68 ++++++++++++++ Week_02/note/heap.md | 161 ++++++++++++++++++++++++++++++++-- Week_02/note/tree.md | 6 +- Week_02/pic/heap01.png | Bin 0 -> 236864 bytes Week_02/pic/heapifydown01.jpg | Bin 0 -> 116771 bytes Week_02/pic/heapifyup01.jpg | Bin 0 -> 59237 bytes Week_02/pic/heapifyup02.jpg | Bin 0 -> 102978 bytes Week_02/pic/heapsort01.jpg | Bin 0 -> 82649 bytes Week_02/pic/heapsort02.jpg | Bin 0 -> 111172 bytes Week_02/pic/heapsort03.jpg | Bin 0 -> 100253 bytes 11 files changed, 228 insertions(+), 17 deletions(-) create mode 100644 Week_02/pic/heap01.png create mode 100644 Week_02/pic/heapifydown01.jpg create mode 100644 Week_02/pic/heapifyup01.jpg create mode 100644 Week_02/pic/heapifyup02.jpg create mode 100644 Week_02/pic/heapsort01.jpg create mode 100644 Week_02/pic/heapsort02.jpg create mode 100644 Week_02/pic/heapsort03.jpg diff --git a/README.md b/README.md index d34d3d5f..8ff05c79 100644 --- a/README.md +++ b/README.md @@ -14,8 +14,8 @@ * 第三遍看国际站,比较国际优秀解法 * 第四遍默写+总结,记录优秀的解法 * 第五遍用时快速熟悉 -- 四步解题 - * 沟通题目 - * 自顶向下+边界+图解 - * 时间空间复杂度分析 - * 测试用例 +- 四步解题法 + * clarification 沟通题目 + * possible solutions --> optimal 找到一种最优的解法(时间空间复杂度分析,自顶向下+边界+图解) + * code 编码 + * test cases 测试用例 diff --git a/Week_02/README.md b/Week_02/README.md index 40dc00f3..9a998975 100644 --- a/Week_02/README.md +++ b/Week_02/README.md @@ -37,9 +37,77 @@ #### 四、心得及小结 - 本周可以沉淀的代码 + * 二叉树遍历(递归) + ``` + // 前序遍历核心代码 + public void preorder(TreeNode root, List list) { + if (root == null) { + return; + } + list.add(root.val); + preorder(root.left, list); + preorder(root.right, list); + } + // 中序遍历核心代码 + public void inorder(TreeNode root, List list) { + if (root == null) { + return; + } + inorder(root.left, list); + list.add(root.val); + inorder(root.right, list); + } + // 后续遍历核心代码 + public void postorder(TreeNode root, List list) { + if (root == null) { + return; + } + postorder(root.left, list); + postorder(root.right, list); + list.add(root.val); + } + ``` + * 二叉树遍历(迭代) + ``` + // 前序遍历核心代码 + while(root != null || !stack.isEmpty()){ + //go left down to the ground + while(root != null){ + res.add(root.val); + stack.push(root); + root = root.left; + } + + //if we reach to the leaf, go back to the parent right, and repeat the go left down. + TreeNode cur = stack.pop(); + root = cur.right; + } + // 中序遍历核心代码 + while (root != null || !stack.isEmpty()) { + while (root != null) { + stack.push(root); + root = root.left; + } + root = stack.pop(); + res.add(root.val); + root = root.right; + } + // 后续遍历核心代码,前序遍历的一个逆序 + while(root != null || !stack.isEmpty()){ + while(root != null){ + res.add(root.val); + stack.push(root); + root = root.right; + } + TreeNode cur = stack.pop(); + root = cur.left; + } + Collections.reverse(res); + ``` - 本周学习心得 + #### 五、疑问汇总 #### 六、练习汇总 diff --git a/Week_02/note/heap.md b/Week_02/note/heap.md index dbc96016..5af31f1a 100644 --- a/Week_02/note/heap.md +++ b/Week_02/note/heap.md @@ -2,24 +2,169 @@ --- 1. 堆的概念 -堆是一种特殊的树 +堆是一种特殊的树,可以迅速的找到一堆数中的最大或者最小值的数据结构。 -- 堆是一个完全二叉树 -- 堆中每一个节点的值都必须大于等于(或小于等于)其子树中每个节点的值。 +假设是大顶堆,则常见的操作: +- find-max:O(1) +- delete-max:O(logN) +- insert(create): O(logN) or O(1) + +对于每个节点的值都大于等于子树中每个节点值的堆,我们叫做“大顶堆”。对于每个节点的值都小于等于子树中每个节点值的堆,我们叫做“小顶堆” + +2. 二叉堆 + +- 二叉堆是一个完全二叉树 +- 二叉堆中每一个节点的值都必须大于等于(或小于等于)其子树中每个节点的值。 第一点,堆必须是一个完全二叉树。还记得我们之前讲的完全二叉树的定义吗?完全二叉树要求,除了最后一层,其他层的节点个数都是满的,最后一层的节点都靠左排列。 第二点,堆中的每个节点的值必须大于等于(或者小于等于)其子树中每个节点的值。实际上,我们还可以换一种说法,堆中每个节点的值都大于等于(或者小于等于)其左右子节点的值。这两种表述是等价的。 -对于每个节点的值都大于等于子树中每个节点值的堆,我们叫做“大顶堆”。对于每个节点的值都小于等于子树中每个节点值的堆,我们叫做“小顶堆” - -2. 如何实现一个堆 +3. 如何实现一个堆 完全二叉树比较适合用数组来存储。用数组来存储完全二叉树是非常节省存储空间的。因为我们不需要存储左右子节点的指针,单纯地通过数组的下标,就可以找到一个节点的左右子节点和父节点。 +![avatar](../pic/heap01.png) + +[110,100,90,40,80,20,60,10,30,50,70] + +- 索引为i的左孩子的索引是(2*i + 1) +- 索引为i的右孩子的索引是(2*i + 2) +- 索引为i的父节点的索引是floor((i-1)/2) + +4. 二叉树的操作 + +- 插入 + * 放到堆尾 + * 自下往上堆化(heapify),顺着节点所在的路径,向上或者向下,对比然后交换 + +![avatar](../pic/heapifyup01.jpg) + +![avatar](../pic/heapifyup02.jpg) +``` +public class Heap { + private int[] a; // 数组,从下标1开始存储数据 + private int n; // 堆可以存储的最大数据个数 + private int count; // 堆中已经存储的数据个数 + + public Heap(int capacity) { + a = new int[capacity + 1]; + n = capacity; + count = 0; + } + + public void insert(int data) { + if (count >= n) return; // 堆满了 + ++count; + a[count] = data; + int i = count; + while (i/2 > 0 && a[i] > a[i/2]) { // 自下往上堆化 + swap(a, i, i/2); // swap()函数作用:交换下标为i和i/2的两个元素 + i = i/2; + } + } + } +``` +- 删除 + * 把最后一个节点放到堆顶 + * 然后从上往下的堆化方法(HeapifyDown) + +![avatar](../pic/heapifydown01.jpg) +``` +public void removeMax() { + if (count == 0) return -1; // 堆中没有数据 + a[1] = a[count]; + --count; + heapify(a, count, 1); +} + +private void heapify(int[] a, int n, int i) { // 自上往下堆化 + while (true) { + int maxPos = i; + if (i*2 <= n && a[i] < a[i*2]) maxPos = i*2; + if (i*2+1 <= n && a[maxPos] < a[i*2+1]) maxPos = i*2+1; + if (maxPos == i) break; + swap(a, i, maxPos); + i = maxPos; + } +} +``` + +5. 堆排序 + +堆排序的过程大致分解成两个大的步骤,建堆和排序 +- 建堆 +数组原地建成一个堆。所谓“原地”就是,不借助另一个数组,就在原数组上操作。建堆的过程,有两种思路。 + +第一种是借助我们前面讲的,在堆中插入一个元素的思路。尽管数组中包含 n 个数据,但是我们可以假设,起初堆中只包含一个数据,就是下标为 1 的数据。然后,我们调用前面讲的插入操作,将下标从 2 到 n 的数据依次插入到堆中。这样我们就将包含 n 个数据的数组,组织成了堆。 + +第二种实现思路,跟第一种截然相反,非常妙。第一种建堆思路的处理过程是从前往后处理数组数据,并且每个数据插入堆中时,都是从下往上堆化。而第二种实现思路,是从后往前处理数组,并且每个数据都是从上往下堆化。 + +![avatar](../pic/heapsort01.jpg) + +![avatar](../pic/heapsort02.jpg) + +因为叶子节点往下堆化只能自己跟自己比较,所以我们直接从最后一个非叶子节点开始,依次堆化就行了。 + +``` + +private static void buildHeap(int[] a, int n) { + for (int i = n/2; i >= 1; --i) { + heapify(a, n, i); + } +} + +private static void heapify(int[] a, int n, int i) { + while (true) { + // 从非叶子节点开始 + int maxPos = i; + // 左右子结点与当前结点对比,找出最大 + if (i*2 <= n && a[i] < a[i*2]) maxPos = i*2; + // 左右子结点与当前结点对比,找出最大 + if (i*2+1 <= n && a[maxPos] < a[i*2+1]) maxPos = i*2+1; + // heapify操作参数携带了数组长度和需要堆化的节点。 + if (maxPos == i) break; + swap(a, i, maxPos); + i = maxPos; + } +} +``` + +第二种方法,我们对下标从 2/n​ 开始到 1 的数据进行堆化,下标是 2/n​+1 到 n 的节点是叶子节点,我们不需要堆化 + +建堆的时间复杂度就是 O(n),推导过程详见参考链接。 + +- 排序 + +建堆结束之后,数组中的数据已经是按照大顶堆的特性来组织的。数组中的第一个元素就是堆顶,也就是最大的元素。我们把它跟最后一个元素交换,那最大元素就放到了下标为 n 的位置。 + +这个过程有点类似上面讲的“删除堆顶元素”的操作,当堆顶元素移除之后,我们把下标为 n 的元素放到堆顶,然后再通过堆化的方法,将剩下的 n−1 个元素重新构建成堆。堆化完成之后,我们再取堆顶的元素,放到下标是 n−1 的位置,一直重复这个过程,直到最后堆中只剩下标为 1 的一个元素,排序工作就完成了。 + +![avatar](../pic/heapsort03.jpg) + +``` +// n表示数据的个数,数组a中的数据从下标1到n的位置。 +public static void sort(int[] a, int n) { + buildHeap(a, n); + int k = n; + while (k > 1) { + swap(a, 1, k); + --k; + heapify(a, k, 1); + } +} +``` + +整个堆排序的过程,都只需要极个别临时存储空间,所以堆排序是原地排序算法。堆排序包括建堆和排序两个操作,建堆过程的时间复杂度是 O(n),排序过程的时间复杂度是 O(nlogn),所以,堆排序整体的时间复杂度是 O(nlogn) +堆排序不是稳定的排序算法,因为在排序的过程,存在将堆的最后一个节点跟堆顶节点互换的操作,所以就有可能改变值相同数据的原始相对顺序。 +- 总结 -3. 堆排序 +堆排序包含两个过程,建堆和排序。我们将下标从 2n​ 到 1 的节点,依次进行从上到下的堆化操作,然后就可以将数组中的数据组织成堆这种数据结构。接下来,我们迭代地将堆顶的元素放到堆的末尾,并将堆的大小减一,然后再堆化,重复这个过程,直到堆中只剩下一个元素,整个数组中的数据就都有序排列了。 +6. Java堆的实现 +- BinaryHeap +- PriorityQueue -4. 堆的应用 \ No newline at end of file +7. 参考链接 +[堆和堆排序](https://time.geekbang.org/column/article/69913?utm_source=web&utm_medium=pinpaizhuanqu&utm_campaign=baidu&utm_term=pinpaizhuanqu&utm_content=0427) \ No newline at end of file diff --git a/Week_02/note/tree.md b/Week_02/note/tree.md index ca54c7e3..994ccd23 100644 --- a/Week_02/note/tree.md +++ b/Week_02/note/tree.md @@ -142,8 +142,7 @@ public void delete(int data) { - **时间复杂度分析** 插入:O(logN)
-删除:O(logN)
-查找:O(logN)
+删除:O(logN)
- **红黑树** * 红黑树中的节点,一类被标记为黑色,一类被标记为红色。除此之外,一棵红黑树还需要满足这样几个要求: @@ -151,9 +150,8 @@ public void delete(int data) { * 每个叶子节点都是黑色的空节点,也就是说,叶子节点不存储数据 * 任何相邻的节点都不能同时为红色,也就是说,红色节点是被黑色节点隔开的 * 每个节点,从改节点到达其可达节点的所有路径,都包含相同数目的黑色节点 - - 参考链接 * [二叉搜索树 Demo](https://visualgo.net/zh/bst?slide=1) * [数据结构预算法之美](https://time.geekbang.org/column/article/68334?utm_source=web&utm_medium=pinpaizhuanqu&utm_campaign=baidu&utm_term=pinpaizhuanqu&utm_content=0427) - + * [二叉搜索树demo](https://visualgo.net/zh/bst) diff --git a/Week_02/pic/heap01.png b/Week_02/pic/heap01.png new file mode 100644 index 0000000000000000000000000000000000000000..8ccaec9d7421ce0e10e5efcdaa938d4ad17ef44d GIT binary patch literal 236864 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�zDjzWMUl<2rULdP4YDu%vo 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

uogo(WifF| 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≪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 E8&>2oNB+d+-3kt?>i`B)D6!;7)LNx8UxLdt*%l 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 literal 0 HcmV?d00001 diff --git a/Week_02/pic/heapsort01.jpg b/Week_02/pic/heapsort01.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7500a872d6301fe9047a8c422db3bd97f3f6401f GIT binary patch literal 82649 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 b{+s6tf0tzG-yX03PCos=vPXdXd-{I>d$@Y2 literal 0 HcmV?d00001 diff --git a/Week_02/pic/heapsort02.jpg b/Week_02/pic/heapsort02.jpg new file mode 100644 index 0000000000000000000000000000000000000000..51e206332d980d124ec30cbacff8fc59ffea1bf2 GIT binary patch literal 111172 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 z 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 literal 0 HcmV?d00001 diff --git a/Week_02/pic/heapsort03.jpg b/Week_02/pic/heapsort03.jpg new file mode 100644 index 0000000000000000000000000000000000000000..81d80a66f9b52189a054fb925f1adb852e7954f1 GIT binary patch literal 100253 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 Date: Thu, 18 Feb 2021 01:00:03 +0800 Subject: [PATCH 39/58] add:graph --- Week_02/note/graph.md | 101 ++++++++++++++++++++++++++++++++++++++-- Week_02/note/heap.md | 2 +- Week_02/pic/graph01.jpg | Bin 0 -> 127840 bytes 3 files changed, 99 insertions(+), 4 deletions(-) create mode 100644 Week_02/pic/graph01.jpg diff --git a/Week_02/note/graph.md b/Week_02/note/graph.md index d303dc6a..3a3e5382 100644 --- a/Week_02/note/graph.md +++ b/Week_02/note/graph.md @@ -1,7 +1,102 @@ 图的知识总结 --- -- +1. 图的属性和分类 +- 图的定义:有点有边 +- Graph(V,E) +- V - vertex:点 + * 度 - 入度和出度 + * 点与点之间:联通与否 +- E - edge:边 + * 有向和无向(单行线,双向度) + * 权重(边长) +2. 图的表示和分类(以无向无权图表示) +- 邻接数组 +- 邻接链表 +![avatar](../pic/graph01.jpg) + +3. 基于图相关的算法 +- DFS深度遍历代码 - 递归写法 + * 和树种的DFS最大的区别,不要忘记加visited = set() + * 代码模板 + ``` + public void bfs(int s, int t) { + if (s == t) return; + boolean[] visited = new boolean[v]; + visited[s]=true; + Queue queue = new LinkedList<>(); + queue.add(s); + int[] prev = new int[v]; + for (int i = 0; i < v; ++i) { + prev[i] = -1; + } + while (queue.size() != 0) { + int w = queue.poll(); + for (int i = 0; i < adj[w].size(); ++i) { + int q = adj[w].get(i); + if (!visited[q]) { + prev[q] = w; + if (q == t) { + print(prev, s, t); + return; + } + visited[q] = true; + queue.add(q); + } + } + } + } + + private void print(int[] prev, int s, int t) { // 递归打印s->t的路径 + if (prev[t] != -1 && t != s) { + print(prev, s, prev[t]); + } + System.out.print(t + " "); + } -- + ``` +- BFS代码 - 递归写法 + * 代码模板 + ``` + public void bfs(int s, int t) { + if (s == t) return; + boolean[] visited = new boolean[v]; + visited[s]=true; + Queue queue = new LinkedList<>(); + queue.add(s); + int[] prev = new int[v]; + for (int i = 0; i < v; ++i) { + prev[i] = -1; + } + while (queue.size() != 0) { + int w = queue.poll(); + for (int i = 0; i < adj[w].size(); ++i) { + int q = adj[w].get(i); + if (!visited[q]) { + prev[q] = w; + if (q == t) { + print(prev, s, t); + return; + } + visited[q] = true; + queue.add(q); + } + } + } + } + + private void print(int[] prev, int s, int t) { // 递归打印s->t的路径 + if (prev[t] != -1 && t != s) { + print(prev, s, prev[t]); + } + System.out.print(t + " "); + } + ``` +- [连通图个数](https://leetcode-cn.com/problems/number-of-islands/) +- [拓扑排序(Topological Sorting)](https://zhuanlan.zhihu.com/p/34871092) +- [最短路径(Shortest Path):Dijkstra](https://www.bilibili.com/video/av25829980?from=search&seid=13391343514095937158) +- [最小生成树(Minimum Spanning Tree)](https://www.bilibili.com/video/av84820276?from=search&seid=17476598104352152051) + +4. 参考链接 +- [深度和广度优先搜索](https://time.geekbang.org/column/article/70891?utm_source=web&utm_medium=pinpaizhuanqu&utm_campaign=baidu&utm_term=pinpaizhuanqu&utm_content=0427) -- \ No newline at end of file + diff --git a/Week_02/note/heap.md b/Week_02/note/heap.md index 5af31f1a..1988ebcb 100644 --- a/Week_02/note/heap.md +++ b/Week_02/note/heap.md @@ -167,4 +167,4 @@ public static void sort(int[] a, int n) { - PriorityQueue 7. 参考链接 -[堆和堆排序](https://time.geekbang.org/column/article/69913?utm_source=web&utm_medium=pinpaizhuanqu&utm_campaign=baidu&utm_term=pinpaizhuanqu&utm_content=0427) \ No newline at end of file +- [堆和堆排序](https://time.geekbang.org/column/article/69913?utm_source=web&utm_medium=pinpaizhuanqu&utm_campaign=baidu&utm_term=pinpaizhuanqu&utm_content=0427) \ No newline at end of file diff --git a/Week_02/pic/graph01.jpg b/Week_02/pic/graph01.jpg new file mode 100644 index 0000000000000000000000000000000000000000..91051911cbb9bec3125d9c7fb67fc4a41fef3219 GIT binary patch literal 127840 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

$#T?cJdqd2-i< zN0ekc55GDP;=!v+TEzDcdZowA4egA`veGo`A`ozM0IDy*>_~CTR`?Uy_bz{9wSDGk zFDDmB%WkxV`TCgnkR{hKKDC|Dq47p& zPEv$zSd~w~67M_jw~*?}yQ*LxKm%i>vbi7`t0X%)=i|J37Il;>4s0V1pWOQ}E0qSJad zRSJxl)$d(2_1tNP> z=OOkG2n}u%t6oMqC{@9_J~+KIP`#9#S%Y$t8tr||DqCpxY=W8e*tQn~abu6h4-YeX z9dOxrHs3jNTQ%rz6X+iMiVuDrwvQwoWHie>;#MqBl8RMQ*wirZy7R15Lt?0zfrV=y z$JtG8#D6|Cj9jK_02{O1+5<@>Cb#h!XzXhOAprWhPEW`Mp{D!Z=}rcUyZ~K-tn9y2 z4yMH^zQi4dB)|b)kHM2)h*P;TyI!VBiysp5NHbUTxcWEW)&|u;T$B=V*yLaxlB$ zW&?dK`;z5gami*t{<$h(?eEdBskO5ib^vAp&&QRXXhf15D^LAQYRCzy9##-}75&Ht zn2xypQ(g=Kp}tQ8Q`T1PuY_H>?}M(TUf8)#umUoOU?J*sIqsb9Hr=R_B7^BCoVR5! zac9h~9o9Zlvjmaz8uZ-*4Ub;EKhv0R2wqFxee}h;CGBhO(lLu2=#1Hl%%q^sv_8(H z5PnXg+XZ#%5gl&YbB%!cD&};s@u8|%ZBEE+_Tl20?Kdjy-|;hRF2w{GIKV}5z)rUq z0ZM-!Y?r@m>)Xn`J&=gA;U1{aosu`hPLgz13BCT??a6dR$Ts4Dt1vbZ+x7-s zCu3nerT^YSms^;*AeVM1=*yA#Lr7s8*SMBBy@kNj$Dj1iPluHVo+R$vc;>;*;sn|1 z#$LJO^}?`JxXK8r1&c+Oe*+xO5LjtTM3wh-uaiWlZSRru>0u1(h6+0}cqH)&-Z@%R z@T*&HzQZ};a`Q!z`-*4hQXmtVU*BMxy*?1uC_JiDiX{Iuhm&&E-5?FqrJW?=!IFF6 zK}`L@w$sZlk^1isWA0-;WFm>!(xes>y4s3^?qq{Cu8$%RxvT@X-M0=+c!fIDBH2nk z_*&Y%_6cgdnWQK!>6+ZAK0pO5{&!PDH|I6HMm2yuL@u{^?a~iKAnQ&bXS4uysnBT$ z`W`VJK|Lk&&}>%)@K|3Z17Zb9qysVu>x@DAK{79K6C$%(cbS2F2u7}_rQ!D>V#tZC zuIlV&c7}`Z8<9hNd!QD6?72OV^9TCzeO0Q2Ip= z)O+&oai`h*v2SH?I+GY)xJY-Y@vafeC1aD|t1r*jnG$*tcNP{6o7TMh`&|oL(h%dk zkFS#z0t$wyLC>fO8(<2@T;K3y$|h+W(I*DnHu@rf+ewHXd(qC&&S3c$vo#fcMIeWp zvLA0ki-1L~j5yGaPnsyGu5OD}7+CAjJ5w2lv`=;)dm3Ruj*ZlO533OGeOmhQKOW2c zAx7c^meoWiY&`(jRO}b|T;fls?C(9d{<@9v;3|b)=Wqyv$A#vQq*!x>))Q`CC(R;D>A`upO@p7ICQD9(?_C-leI*)nE{?lctK3X z_G8BDskG%u7S+$IvMS2!IGjJcV%H;0l8sz|0AppQr07bn`vJwwDkiDQ9_}dw14(iU zgW8!vh!94KrIRY*isup}s)M;lD2H|v`ulevoTRSiyn>J9(N)c5gu>=lb-vA$eDC9F zVztb&XThi8fxAh#LU}a}XuZKZ`{u;QvvO=1Z(dGJ0TT9jX~-W{LO3!RjR3>~nHvluGkJHK%U{f4hZa^HBdgORP;D*^veo!B2 zkbs7gx~AmukPvutNh~EVul2*(GXn~nO10ym707xdbAvlGV|A?7`)4tBmC2}ymfC2R z$)it->>Zj1R?oE!!(I8Q&zb6Bp2~D|5Qg}tVfv@g}F0{{VlzR<(=3IvGBQ;R> z0m)o*A4G;uq$S#1FBZ1c|CE}rlc_6tV7_s@1PJ9L8X$}c23tXdLEYp##-H z1zhf|uKZCF_g@8x_m(ySg#bUR5C>928gr|5#WHNxYKl z#YL<8Ftj~DsGLX@t*R=2e32lMG;}k-isf@7_cx{j#EUM|iMy~`ulq-jkXR-IN~0Ou zrF!^ozhQK!4ovRu`kwChLo8!Y!Md&udiD@Q$U+~k)ADiP$KKSUW*zhJ*|m@HYxRoB zst4;CSkRe%PoMTj*1szU3NA8EXJn?`SFfDTu7w<+_~9FOOh35A=gG9$`r}}1;{cvX z!}YVq+Id2!l!|%;!piMzLF{iaJ?AYVb$!6c5$%w-`Vk1`F+s;&&Tn>C`3eQ*u8v#5 zF6q7I5<3jKnxcDQhogV;dkk)Q^l7O%QwrRZ1m$hQFpRnQ9ORr*e7L$8qEe_tyt4aJ z3PAJGqwXv>tOTOq)v5!PT^D#i-Sa&J1q68sz3;twC7`oz$3I41px~rcu=Bh3Is$nI znz0ZHVCU&862XVekP|^xWX>@|mScsfWIud_ZX8 zF>;RlrLCzAeRC62DIaunT)StYxJ>KF!JKpEsx;lDF0Wlq6#gva_#32y-vRYsfV4DL z5U}0JXZPS&ad_kNf!pC{&#ewJpvmlbWlC`Q9%D((Ud zt&XvQ3*9q9L_<4Ei;anUzOBw(0l!!+OiGmbIT`f?9c(Mw~fsRH*VoZknX+-(YZJ9TzC@-`r^H4%;t;Kqci@SA4eVhx3l zzT_txHFGe$l#QXy;no1b2Pa@(TXecTk5>}pKTSzCZdWZo_}DoO(^{xtLq+7rb=Qwd zO=#WEk+uJO0F>s}G9?pdYrY%I8Xe;C7xg{EW_+VTA8#mg@ov+I$;z#y zi#O;+OghedY|ZrkN}jwCV^*;=u9F;u2mltR0-)x}a8lg*Wu^vh#98pm3XJ=clWb(GKE@KAzhkhsw>za0a|E!@ql>Kzw~W5#Lz(=msrT0U-~3lJ?1dO=Z_H z0er#7xPFyJD|wG#V3)l<6SoznB?hU>Bwq7)YkW++zwGA{hxDRv$IEj9)xJw^_r+Nl zmb|ruSW^>#!7L;DAnOyV-r?sXu80MMxI((G~@`)9MzT9J+7M;mlzx-eA>~l_FI;roOWhP0+%n)i3B9Bo$R#;qlc?W zqtiyE`YTAV6N-HEQS%ya90XCN34I@IST&+mYhb&fh*L{gUQO;HcmBMp`135Y!zVFD zJBZS_S-*n-VPe3*WhIhu{8C39wD+Ys-6Li>Q-?WO{&Wy)OV|8exhFyuS!aZt!HWV>ITvi_Am(eu zcY_p?AVax9|4RX#{mBjhHL$G_BiwjCDJbneYC5MDkbY@gg$`l_>ibX;)6J9UY&&fc_xTnByou04%vFR& zPa^4?cGC+x;IG5l=vMW-FDk`Q0NzE@VE;sJ?@}?}e-A!d)*4 z$JaejlWs1`pmQD5AGQdK8^`Ozw)qrbJ9EfQ4p@O?cg2i%&k|4yo8KPtJz3yIrKfA} z808DooEPp=CgnN_N6`LOuX%JsewR~))kEI1)rd-4bB?gKLPR>FqL1!>n>yuCpuKa2 z7?JP|J`x8MQLJ%vuk;(9aBz9>StZ_ObbDY1gWHiMn+LE^Yf$TM705;dFQ+ZFNfhOw zD*JArJ|!==(Bb#LWy(B?6%2{Zb!9h-i^6cZIT?JB@kAL+0W89FcAbVaG8$d}u3Y-< zxMxp(VanAQM{UXna6k5<<|$cN#Lfpncp~N#>MM^jnusAhjo5X;UWTkiir?$AUkS4s z%|iPj3Y#V$@7vVL3QCkI-gbl~l{y`6LTFICD()dV_dw-}5#H$%!}f0MM=ZCIVzYIS zZmhFxH&zHck=a&6?bT$vHd`~mzQHYRlM6oMlGhWrg6c;zj~8Z6?rKgt_>njs?c@}A zlr_P@u`?uOM$%!3v)PPf>4>{so?&`2f0L{}S7}J7xeFXi_713Qv6l%JDZ%T$ePQwb zdbFI;v^VJG{UG-Z0U!y{f13ROMfN=@czT%pIK}buI=s8&&AbSR{Yn#JVdU#D%n5f; z|Focb6Jw1U06?kDv4~EnF+aWeVGvfwLWBELM72mHuK7bC));1!+@Ne zIw|B#=puTnb7x?fZjFB-_rt>_v9#h-lJm%6_ApQUX~pV2M0Q{V)ySmVI<%xon+iBgb>wFd7VU^;_i9xfi5O(GZV4HOZ#wCP(ZYkt}dB=M68yaRb@rp57f?x5T~ghWY)Pe1+&7e z(jnS_w^jnm$js2lq1!k~WuBcjUT&As#&@7^bybhHJe_m^748>a$GpK_*#m{EdIi@o z1h_P~?yHRJV~u-2^K7~RZUvB`r)g^B0!~3>Q*`FQcsf`*q@+6^xvxt7;1xuNtcB6V z-j`MNX|r$AXW+o|Gsu#RGnUZ|TV9+32D)2O2sgvosBo(%Zb=l*>?xD^n40~E*JhoQ z`}M-KR3=T&>_7{sW3eqtE1gqiNe>iP*x;2wd;OkeH+Wm`5Qg-{G^T&VT zdyv0va34|w@S7n(AocP0^?&)2dmxS!bCNmWZCtkfPs%fvH(s2|WxYNclEWu5(1AXJ zb#pgkUh7hq1rwV;$gDQn%%A!&4G9AUo^0}pQRS^4m9{Hf6;9ls*LN$}C|Z$)op!Ae z1e~_(7?yVH_6(B6wYDJx#S$^izAlQ`Zt@oLVR9+r6zP$$qe1(euIp*Q?HNH_*y@PS zuwQs5J7jQ6NP-69mpD?zAE%9he6vBMMk91uytn zKj`ieX|+82Q7{LT&AjbQjM^>ECb3AejI&)dzG*6)V$gv0bRW>9r&xPEuAwU;@RiN?tq92B(j^l0Fw~rx-TTIj_`(0*CIKYwQ!VakG5_l(i>;nAHzp$<(pEEu7 z;I?)}{0?(lwvK_XCJ;`9sP2JUo8BM?&QS8UGW;-~fg(Rx9U!d2Rr_V;3DObX8T*Bg zovWqmq02vun z2`brNRX$wqUP43#fKB;fVRt@xQxq4`(i3cFcKhaQC^JBcVS~O#mlo0l2}CW7Fv*U=zWj8u~Kza{4I`VmAR7CoQgmb#oG|P zF>G5X8Gv zleuj@RTWCzkH!x)!VXXldAnm4ix)TUUh!*Ho#wui@-!r?l^ps$Gh^A9zY0SkN0@Of-oPl{#TT@S$5+Z8HSw|g=3hle>k}Br=^AP=L5DuXZ zSF7xvGk3Oq(RTA%cwH01i*kyv)&l+t|2Uo;0wZo+JA6XYY%c#3k z?Ymmqbsr-Cte!;=bE*Aow*9*Uug9Y$DDp#YY}V=OxYhW z_bWU7yI0*iQ);fZo6Kg5Fkb5C@x^gLO`%V{qT6)q+(g9>GVvLgAm{av2|!j1zqX8~ zIQ)D{xX}_5IPMG6pz$|dDWL`Ne=nUj$FnfKr2KB?<=9srue#YN^I={fUA-R1C56_d zf}ecKaXZ->n+}n`yJol|4+l_@L45a(f`+NqB#OQD)77|qr32Zs5QU%?GM}qdHihfU zHSdjf*F!~H+q#H5h_P{2Tose^M73;Nij`%+=XK|#%fm52BuuZ&U_}cVGSL}+Fbesq zX<)a@G=6vFnYH7Ne)c9e%b3IK1~Y!N_5`#8*ft1f<&KX#ylEoDGR`q7m*F>^dU#r) zWdX~q?liSVH%h`>B(M>af@aFeZCkDH(p*>wMRl5&(KdN z2+3PODJk(;ISFz#8IkgC&9UOx@pnh&y_?VefJwUkt!;IwK#CsgttFx{eDzZcy0e zo@;fqI^oRToeHuSI~o!r=a+(XMSD;0Zd)Mo8Sb*TbPmxOk-(GOA1a?aSj5WGYZ$*% zg+8XpbW!}tIu4LWz6ILLXM3(O8VHxg-oLWSD9(~gJf(E2lUitvOsBJg&SUEV=cz{g z3&10OtpYQQu4ZP4M8z9xu1M3Yx-X!HV8rJoB-!lDgc#|v;gCG;w{<7In_U*FYQN>m z2tAyfi#B_G#aOWSjL(sr>6(7V8uhL!_NnnB0eTxvsV4?jH}@Z9OjZ_t8uopp?{==3 z5!4!~qNM666suY8s9S|@)y?A-DUY^GtkbW zNp74Zwvke%kP%=m3gq=7;#h@VZ()>a-Z2`z?w}xsK;DO%!U5layorgPJ1SYUZEWTK zO|4!zkZ675=!KP_S+)@+zV%E)*#UPt%Yk_?<F4& z0;Ar8E*-#WWmCAj`@4G!IzHTLdosNB(J9!}e!ttj;V~^Ro4i}lSIZV3R`hLauXH*X zI6$DbMw#?{l8ogEKtZdzSkCo`mQ@v$A8wr%F1v*;!8XEpNfA?PkKl6B7-{+8fXF6q z%?W?+)^_TK*-jh>kQDU@Opj0rko?>)-4Pvxu(2J} z){*X4US5*iy)2$cRbz_4L-^fmj z@4bHSp0Y>DtRA4yS4j9~rak-Vl>V%+qStuCck}Y|hAN}aYOz*bXZO9~y3ERK|4aE* zdg7Q$`n6b{JYTkULtT&$8jpcPh@lYTO-)yo(NY`A>C7s(*c@w%`wYO_Ke5&DEQ>`u zy+6yla|bl`WoBDm)@P{lTYjg&ToaP{bJNMo-!GIiu)Hp@#AkL@Lb)KVyfcZvnf;rd zgj08Hj`r08KnDGuU_-;FL%XjvKiaBZ)wHr~oHj7gj1)ksiBHym>1b*_Wtwfjda zbzQoCz4zbyDvD75!GEr0{Nz7@bW@E#p6dTuln*FYm!N=^Mv_Fw|ErZ&ScIJbIMMHW zGyaYgwTnsUgps0_Q1w97h$Ll8qe&tvTuFDcp%yIV* zdHgrZI3qav1Q`Ben4AORYT{V)nQMTqp+JkCI;{?lrNo@Fy zC(0gr*Cag-swd%KM*|K`$}|gFH9}KW%FD{$zc5G23Rn1$vFE*8j6UHpO*rG}c^rd; zdkwfx>W%>4(;>dJq5Kh_foyy7H=BMO{3OsT8d4(-N9;J7t2Wd6=?L@02Cx4^+?&Tk z`S<(dBbDqaTa>8~k(9M;Lxm(s%Fa~CG9j`zW|ELSgs6-{lo+yS8T*p#%h;D8`!a*Z zFiXF;&*#4HbD#4)-*eyRe9t+*Kjtxyt`T$1yszv1dOcsyMHqn*u4KPAEtsYs{7w2$ z%}6LyVd_2<*4NMk5F(j9+mbu_OMA5hf3Y^AZZmpB&fwMjs5dES(};SD^o11b5qZ6t znS*yik5cgqLW`Xw)yeCLCj5oNR^q8+g=Z(GHZzY&77zSXcOJv=p?;VMz>8v5^mBaE zEzm`S=B+Z7Jcay51)UcbQl(d*!%Nd9@kG@ru8fUQF$3`m%@^FFqRip66?#1CwDWIB zVN3&-$4Lbfs(7*9=EnVmdy|RY$D{opTRW_DXHc365}+ik(!?(_W46K8C$uCcXo>T zF=}svj2X4cBBCNpJ)ZLl+X^}C3LHybA_F4}HYcc>i@nH)^rFhsX%aiyi80yG3tXB% z9Cl(Y^v7S_4~zI3uhBJ9We%sTftr1C zyI3{Kr+I6kY`pVv@sRG=hNUZv!<3ckZ{<5pz}Nl4M@7w%?UHz63Ys$XN_|&0v3KcD z?MQ+YAKNMFF%=iN@8WI3MfJ92ow--;lxOypTXcubKt;S(E>9b-SLfx(=pSuWv)q~?VMcsve@R3)qh!b^Bj7Y$C$-RxQwzbvgK zLMSteGn|4uF5pV&p)VAk_->9d8zUB8O43{EN^uI)G{w<&np?qIsRj>`9Iv=qz>je* zT@t>SY%9FZv<8oNBMF;O`lO`la9Q``mJV zaHP2_Tly&{$~qvT5&adt;+{hZS-SkK&(r0acl?i#V~fe^t-m2^y}{*prAGB4jZu=r zGn6dStk-2z^;KyvQoZ12)t6wgk=~g~klXcFQ2aFgc@;UA*PehT-vjVQQ)V z_>_g;kP>rJ(;F~MMyh|(ej*h(s|PtC$WR=0#-~bkG1w9K;Xbr;-)zy#ro?TDmya~6 zr0gXg)EmUKyG1AN;8$3wt|LwjOiK88J> zBUL)=i9>RhXP3|F&8@$uo#tLq?iv7Cj}yg!rc5lgBq=Umv04Pico|C@9QY8**_}0V zJiY8xNk6=!d$Vd@)K%w~ZBR^RfEHD>o*?5hmHNgxQ8vqLWN`bIwu;MrZ$kBju8~F< z(AIi=UP?)f@_X{$`HL&g~_S7%;e+{4{{JPpYx_5UC*W1OVj|ch-a?8qF$|sTb!D4PS-c zDJz1XJkcL^fpKRB+#7DUYap zurToJ1+{yjH)da%mf>Hk_c~OgI^bOJ`ft`9<^J*kIm*L!oc($$HbX}BY$HttO`l(+ zGwC|V{X2-`$CeRW+j)7-qZ859CmeCy3dxGc9<0cuX~ma6Ra{TSflkeoqWXR@-dvI1 z5ObLC{>wy2j63|)?(GV7!ndZ!`Pz}R6>kUemtoO;*U=*FZ` zO5kXGeEfdk>!8%3Fa2BgW^{InBGn&xj)Kn?mN{%J{V3zKIo?5{RB_W&UaUJOeZR?( zy`~%QNa<7KrBn%;v%y*6R?)=1+#bI}d>nF*xUtvhmGnrIs5R{d7;V$hFujgX z8Ix{KKD6nrPWTI36^s`090oJ|)b7pNd-?;+Xk#~qmb;_7hmKE{5MgMoB8@}F6 zYi;Mkg!iGx76z&ZDdk|zuMy7{PpZC9h%hOwE`7RvE1D?m^# zhwJ$ROp1iV0}X(+US_-AgKx(aV^;#w86DmSheprDX=Q4cpd1 z_dL8`M&g`*p?C5MpWnm6eMbWfd_?w;1~4Rc%^;Ir>(pU;j?55F)E-n9oWC-Fgl!xE zLi4bPt6w}DDx&U2U;q3yNm%cgG`WHd@Xk0`1{%-DxMO4*aj#%iVV86uE+cwQ`;0$R z3SeJTTv&lW0N2f_8>nL) z=!I~gRU3GFFj4XF(pOfxrJuzxgpsSg~iNoG=D9x4|lts**zY&K3I- ztK0|Rx4_`t3H<-!gB2bFCEmgS)imr6)pRkH``;e<)7X0m7<-#{pbEjKDGOpy{=UKZ zBL<~&mp=C|vn{Xo-JT=#zoX~4c4@KdD%4n$>qCxSwx!OX(=-cx%D~#BJDQ&$haTr; zat*)#Bl3b5?D7p>NYO43_bRd$MXJFHQ--Lzju`f3yJuryk27(?5g_D5`vt68jbA5H}A|vs)2Px2`s8&yI2&%!K&0M))sg&sCBRR$y{IADGA_w z?!@WmH6h%pSQ1+CBgUX?wMrA4Unx3SC0px%TLq{u5{XydYu;hbgt+5aP|WjCRt3+H zrXh=kkOg~JJ=@lc8ow3@z=#Tb)Bo_XF%grr2R~&~HWzsb@f~+R$0b#`FAKcOFa@|%i=R#&0msch0`=U1;@0i?f zJspTj3`1l!*_KAxUaq})A(u^(IquCAJj7K|E4%e$9p0~l{^29(V{BUWvz46M1Np_q zCpgk1Yw}VHXx3A2(EPrr4gK;X;RK~fhA8iA5#7&7JEC_25ocQ2mA7JRcF$d?NyjX@ zuG*6Rg2AyUa*k3?z=a7l-10NUvn!USl-021H2<{On!*iYu6ElgZCHuzn7_mg`87*O zY~#DC`H87-CdZ_Xsa`9wv@{Fp*Iu|I&}V%H!N*bI9vf*Y;RS~ArYZS-nZ5TA`Hyjq zd1a)l7c*2}r_4PoLi0E+**~#Anz$78sp#(gFY_poeBw%WNkK{U0sPl&zE9wzsum@p z5(qhNqDDp0o?u;QDJD;0gHw+YbL7nyNGH_R)9}{X!Vj76@bOAz@2YN7Ny_zf?#9pi zGw*RQmV*?#yETulg(8_h_}a*xt!t7@Ds7Q=o$U}VyDry+Ju>;}=N@?|_Y2M6f~-QrVNTrpC@`Bh+SUCo?{Q&|X9}lc zrffdXAG<~t<=fDW-X#FA`EC$`eCuz99C3KK=LqT{hx>JoiX~tz?9gV%$zl-RR@+q0sB;dEGWh^pf)$-a}vAyS)yxzz_eUYE8@$AgJ~ zves_rZ*z=#AFk&>gf?D}Dy6e&0m%+N6g8N52#(xGGSeO_Y3*FF`n9$^7L`5n&WcjX zIMDV%&;{udAoa=5RZbWutc`l-ER8cPw@D5Qoksx9#(}n+ho_8c))s;RJw9WP%S{IfHC*Usa^z_KcK==q~ zL7YAM0PP_uBtDlC-R&mcTmIr4wF=!-^)>EgXB$X}0OS@0+NS(msb0Px8T{JKNVN zXY9i*eFd~|*I9#m&Z$$JcS^|u{TMU)TjXhXQT_+TCSug^Z9@k8ktfHR13je$I~GzG z1Vlo;0?euG3o@WA6ggb#9-@E8m|~<$@%Y6yaY!Qw7|B zej;zlvMlnJY_^)v_L>iL6xV+GhZALgOIenb9DVfeh6=lmPe z;9%vwJJs9`IQn-wxPNpkBW+JXr5<5Lw$5A5deKyG@A=3AG1FA!BYIj<3}EXYk9Acv zH$7N~IWMySSEaa3g~p(rWXzn$PnVZ>7u_G3E)BWFhtF;yJXP%!Mh%hly~L9Ozi_{B z4Q&e+gv^!|_iJ20-nhSEW<_y6t+5cb5x!$vgWjViJ}G@QuI*Y0^-|zB^qKt<167>2 zPX^zFFh7-Ko>oN;$uey%><5)gmb|OpdO!p`!v~GzHVR z!#)y2n=qk%i35y{2313zid1*XKxrr%vBu|XvfzRYm`YY~Q#0eZ|xJXFSxMNU8?yIXX9%! z_9a7%(I!+Hxca6+gb7#n%n|4N@c#YSw~r&4ZKOXjy5Kz3r+ni^rpP%Dhk3u(opu%V zC^v4lkz}6dj)E17H7NlXlBwIDG}uw!*JRcy>CMI^xjEmF{n3-I z>%v_Rs)Q$FmN(ub<$F(*4W@*oA0OX}<0zLHuZn(pqOdT$ZtQsQ9-SaI$h?&QKaY-c z^V9Rs?u9{+x5{e~_gQA8phNqaxohFvhx>C6G7@yjJ>S+D>`OcjbUO*?J5S8l73@$o zD+M0uT6lTqCd-%Zf7&1uct`Ojf7nfT$pDwSF_UEDWj{YIjO#`R;lfM1!lP^r#3a!3 z3d{65JwB2+_QTb^NgLvM`__ZRr-v0%@24tr(4D36zPa|kO?G!$_(4c{p9r!3_wUC`xGd)A+r0ILloKg%>CKu zC+Nx5=M6~pQz6NOuw_QW76SKO-K0_-Hkl0L<|~Y$c~mD;%!!?b6w@h77j^^S6mPa) zAkri%*=!k9B!31}l^cfJ2#TC1@)xF0!w{v8zac7%^O=ZM^_WI%Anst^Z^(W4@MY^R zuL$L$E=Bz@!aTO+^ZpwFDnis=!rICTajSlUYZY5mbzgdE=&sAlM1G1zCyg*V~ZZvt`}+4mbG@ z$KeGFhaFW!hvN%wB;rjE`5`1lo#T5k{&YkX^40BQKn4uJ{rZ5zQ`Hgt@6v}FU3l*@ z|4ciwm6zqBTpX)zg)st*0zzWOJw1IrO=$82(d5OjzPj}NLUg93=aJu##2olNREw19 zBsn%VW)!=gi;kQqYzii&w+Ll3f49H4KKIf?x|AsUY(O*@sIa4x#@!l2ISs8>cbjT%a$zT!ggQ5UA8E5piWD(L8EV1J zY5ep`26PFiMps;mUG57@FFo<%Waogs0z~9)8x6|ibec~0gI=#EW~+B!@=zN&V>+sJ z@F15?<3PWnxhtVBt0-DWtp4C|nR-4a>#$np_x24h4L!;N>Czgxnf{?Dfca9f%jNok zQpXLeeX5XSAZ=v{UWaATo;2LEV4(o_9zQ7E!Pt*#wc(;b4=~z`qMtm4;ni%tQN^p* zD*SI2naHCy%8GX5hc5RdzT8aXPDZ=UIM6Y)t9<&<{O{*jsHZByE`25s$2G_GCF{FU zh~Or+1SN)4&!;3zwY`JhB(T0rcTX)2B*G_cqKI(AIK19P-KBLx-l3njtZO&b<(@h@ zK^ir|I8IV9VGaWgLGdo7aWH1^A52WcJO$MZ(nl9cVT%sdxyIsN_tH1m8LZ91*d}g) zLtkLMmf2tfPVnul!wtpMPp~O2jTv5tReyWgGI92z;&Oi`y|3c%E|L)Y{{xZ$Bi;%G zbM(KX8s(6d7;Hv=Pe1w#)yOgPPxD>wKio+KGy%(x4z7sZz(LbYWIWih0mc`v-Gv5A zdGK$I6N+i1#|MkTFN*B5;ZPmCE*i zea?_zRwxP`kN0Mtn;1S!t|V^NTrmITI2&cku<-M<8qjz{b#zq5a7~ls*MQ1tT?<@6t`_v&S*ST+GnKlq?xqQ%{IFq#Ge^X)IGIhvq(3 zoAHkDa}e#MTfPVfMY$W6iv}lojfY2etI6?d+`apH z$!%LEi2>p~EA^te6;hY}q4K`MRSU&RoH1{ARlZ|PEG6)jHgvLDEScaIXYasXw?9VnSHpbKQ+5c> znI^>0f!ohylfU}ATNyt0LbyGJ73L<;ms8<8Y%PE_&vQKxei7Bm;O~by$%cVuf=A7; z+FH>rPTKKxTsq<)mx_1JR}XLb3L}Hm>0A`v*jM$Mi>+l5B0#3e)=d`E^sRGfj+~lL z+58r{<9rz5e8Hux-FJ@0n|>3F$B0O$N4gw7%I6i%J!iT>IKT(u1!`3p!q{ghmIeRk zu`b^#O7yWB7%q754CaEf-3rBBrATkQ&AGur4h5o<_~t_;u! zCH}InE-sfF)j1XWj!Ume5BnD96jMlhM9)J?r|E<*Wm%QJKIpz>nTv{>XB_LL2~P^9 z^XE6YJS3uwhMeya%YCHu$A4=0^}*cU?csjW?W=KN##;N0xX77%^3M>u(>^OhQ<&#F z(QmTWv0(@3%_?&%c7)G#HHJZ@il{>ZWCeh{XCY(_h-NI6tP z&0_J}YC_fteRQ(J`qKxKo>(PN0z9*J!mu%zltVYEzMUhv;{&|I%KTEAc{m2^7_nVV zn5e2-88@oy?&ln$dE2X|<>R;f#P5yp2xzHm0x_%M=HQ}tsS>eOs!7Z-TJ8o5%;FbR z5Y;OJC1%x+xbakmOpa<6ik*vUZ|S_Y-bsy|Z&L3&ye~%EMd>ob&JQ_}t zrAR1;?`~AMj-;j@nDg9~xnwugm zdWYm1^L|vkijltW%X&b|%)`T)LYucAT~9jrr6AvT(C*yYt-sc^y#P)w^olvSPz`;q z|H($%UijGij}P}4m={!+_MI@#%`_*tMu#5n+LyB10ba9^WO|i*<8w;%C#Q@N#m1j? zmY34SXD;k{$)A{5=!rh)#5i6`)p_T2Z1hMIr9<11tEl0R^ViciYM0YG;wN~LsZ9uC z;jx)_gG$JHUNjV`tZ}>`T=UVL%pDfC%NmpAODB%zCJv^`2RR&(L4Gbq{wa>?b_}y0{Z%H0-}J{-);RlGgylF@HAPw z3-&MjzEMvB7I?B={=<_s@c-bb{ksgCf3@shF>PR15~j=5)F(#*xW>MZBCZUl8F$=3 ze4xKo6L2ARPRRt>6nSrn*lf?DM4;A0u16M`Dx zBoXzK6HHnje06no=WBruI|W0$$vraAT$iFYeuVgLeRNTt`%IqF5pOcfJzK>#@5{sA;SQs1VTUNPQ&nrxYS!*ji#^SAl^z_(LF_m5WE5^) zyI6LI21=pJibh9^3U)-b`M`M?QQ=PLLXjlC)%SO|Vk?5{yk;|WyYFm|fiK`5B@0Va z>{ej))XysQdxJRmNF`-wg6u=tvL|iTdRHGWEJ2v93i!XjIIT#Wpz%LpXyZ76|BM!` z{rYOkB@2u+sufe*9I=d2aAMD0>^%GK{P3b#;9C-HY0J3&+h>G@Ov0v}oYj@Q16zDF zqHo2N9XMh1^Gfr~hSuT}DTJ#Ob*&Br8Bdm{yytG{3>v;dx=|?Xct~05aSLB{lt1gH zIuYN9Cf@3d*+R201RLqG?j;Pry_UB(S{nn>6TWzhH#+=7CG0hLrRAOc&{7Uk$dD>PZKM0Mc5!##`|0Vh2UK`Wms7s==$CUAN`$Dlin94}vNxV! z6hZPOYM=HLG-QnsK`FJFs5{HAb9DVfr7hsGMxD`+LJg^SrDmy!M<<#cJ~8bvw+Clf z$uz0z#^fv2Sx*kn;j9$7Ds_H@Z~Yr6Ayk&nYMdXX3~b%je=+y&BjP@{zXwju<*PXI z(5gGM6xR^)hHM+U{HUtxi}Jyd#17?CzpUuzZ6c@#X_~~CXK05vrx?AZQ8i9#C2q+v z5`0S&M_>=$F%z2Wm59%Y+Q&+|n0cCXuMsgpP~wdYii3j5R?2+erfqhCqv$3(KO15V+A~KULea)HCrTP zDt$|`?|1_PRe}Ax2fYpOqR<$m`=?RK=z3$;Jvb{~8%!9s3g);L5$pSS(k2~yDA6QL*V@xgPuA^S()tIU-|jW6mI`qx2e-{ zOfw%jsTLg}a+uf|@`ZL$)ET5TT&N_!WX`|va!?C1 zUpjE5;|ppU_73BU&*3~ZZ3tES%w-3*{3y23#M7&{=^tqZux9CtmBLeD!TryP`DLjZ zcOJ3Mt@CX-0C(W#68Juv9s$nmTpGbsSo!L~<)~)yr&wGyJB_86aoE>YU)-*|GFhoj zLxa@Bisk5oO{VU6;Ty}5w*2ppvMPKucj<$^jUWH0WUw7CWAsbnDa}bBTA|$Seb|R6 z`}2{%AqS5wWq!eOP+akKJJ(H=VqZ*aLjsq=`|j7+&$0+VRUERek4B(f|gOg_PIwW;S8bu#;TXF=X# zdB5?O7Hr#76;K1vgBts2*Ly2rU#zUu-;Bys#&&pomyg`QXQJkOp$%P>ih2{3w;V?# z!Ynl?vpCF~3%{U%wir`d+2z^FVc=i=U=$gC^xc@h>6$|=mJJt#-1pHbF3v7md<PpG%M9tAyueqs_g1+uYN* z5q1zvOTFY21sVm<|CmFfPVe1GE&o*BmG-vvSPpYRh-&n& zb;A`IBKivDG-;_uNGI6k*w-Se`1x$6d`>4r^9&ApG{sF+Z_WF3`wmbI-mO+cZyzP+@k$>JdBe=yTlA3>fwdB5CzMCvjcopRD+U*bgM(x zBjOO7^<;pB#HnZcZ|l=?ESx;_;$_4Ba5?^i8X`D;ie!^C#i^vfVzDl*>bW=R)uic9 zx0T)U>p+Zo$XuNb+qYAf*Q@$u64)n5*b>}BAhSG98JRl&-bv_r;%R9~zr$*0{piwD zxM5o|9}&O2K~-73B|OKhVFzd!JU2D5i&o%0F~;^o2Ct*8j2ZCze&-a+U!PNpcc1% zH0zNZnRRJC1{0#*H{WYim>Mn*kAjsvNSBC&xnbFz*5wsb+PGH>n~htcPd|-c6VDMF zQR#d>k&kUaM~fVN)3~!0wkmVht*`Z1q5SE{)KRZIL_G+%5Jfe@gcLBGl<*zI8uyr$ zpAGW)WK{XI;?C0K%Bf=l_5J}x?8SRoYoN>Fv@OtV;e2(3I}gn7R9-!_*pPfndn$0Q z>NZCDy3tm=?mX~YGj^MnWnb87{PaWF=uAXst}DKMBHu0Co+MBM7lZdy=p64G-(Yi?IP`$3R{GwIdD$RfiYiX=9;t^j z(PZu21g}K*nxrecna zdx`G*BfaoXuf@_+;nqc_S{aXA$_pTug*KWW{YT|K5kpVnwf$7#Z5nx zQe9+|5Cz1Gd8)gi>i-2W@zzb2Mv;i4w!GJn?P*DWlsvv>Z4>$44g%7^7=I!Po!ccU*rD`a} z7IdvJdM11k{cB5t5rQZHuV`Sl9M~?NE2S0)>TNQhD95D~LJS z;dHV(09>5f&#J0lqc3+`Y1nr7UgX^0WIoTNknw_-YkgljJtHWniwepk~tcbjP{#4+DDg6zgGz$S9>jH#3k`l)Gs zDrd?Z*^yrAb~f*w%knSw#H(5@E%z@p&utHE73);I9^dR;j2U!`Og&dj^r^3Uz#te2 z>?pipy)fs5ZJijz)or1LtIzmOHxBn*GMhF}95*>4XnJ9eh|R=Jenbn4G*6;1Sqq1Q z`@ERB_zWfdn0E%Ymf49hjDv1N9|`1DCXx5<9AB>v&LoOq=FDpmr!|7x?2?Q(enWI) zzJt#=$k+dTw-+Dul_5M6Q=**>w8;By0;w%*39i%6q&H0UegnO>Bb0m?x+Al+SxEl= z%{bflY{SvkN4KSRh|WnhFVH-jn0nQCze#J62Nxd%>M8c(<%t7*L%zbg!69rlY2gc> z`2XAt|9vvnzr1#J!m|q`A(jLbF2akjwfiH2i~BMhpk{W^ANY|HQI{{5>A({bl+rO1 zqzm-SYA91{Y2`z}a^{3PYbwyF)F&%4Uz!=eA54? z$CH0z3AcnS?7o;N-<8u8yUBb#yvkg+58ntaaaiWZ70pE*ZeY2S(w^&5A|`p^{yq?t zP)mJ)yhMSL4o%!BD&iT`J2iE}qx|NRyI$Bd+=I1|wmJ9M}}5);kdoIOfAZ1%vG7Ds+VbaDfNsK?Q*B0cD(IADEEp)%OO5KbgTmmXk=p6|!z zxBb>W9)@9OmlTcYuEbbSeQkaFB~|7B};3VPeekmWtL1#|)q!4i}wRFL&S5ayP?UYf!eo9~W4LU%s7 z?cAh&VZ+#w{;21XXO5cZx-lTM@DW34d~s8v6r0b@dm9F6Q2}tGC1Ey#bQsJWa$L}? zm-hsf*UX=%OK*Tvc~80oeUY*jQpq`0-m|zvc)a&})&)U{Qj5>A)j=P&y&U@BL<6eR zamwLz`AC+c7a$AU6fi#i0P{zVv&* zOgJI=)AsIpor`QHy{Yv$2W}0HJLr7GrY$+(F7QWI(>YIek2Gz75l!5fCe8+ZpkS_- z%C+Bvr8Y3vK!SRJ6+#F@(Xm>MB05Dym(+a=uKFAn`^<$EbwZqycKOszM zM)wG#y;?F(r!KeR@V03iP$B60f-s-)_vZwSy<{2B5#Y0a_7>^dU4(m%M;!`TzbNaa zupVnvm}vX-Lhi2eua1ffMepr*n;wzr^{W@9HUoMAZ{pYFcjiwDLVr-LQS+G@Ho)`w zUv4b_=*IKk^EzPXfUZ~XB0V2?MC9|LcZBfEihmrtikn%R{mU^RW!yF2jN)CCPOG8Y zfRhE(qJPE1NyCEGKAD7Bcl^deM=$;nIqYPH2kx8i{|MmxFS&2-60c5<8!{oih~p&! zJc~YIhoNrk(#vCK7i7=ei{-i#djrizgpUZ+$P(at8^4UaN8}2=$tFj8T+ICq8FC{? z`7TYRzU{rn_5P4cq8hC&X#A;~0D}$e#$pa&N{M|;TY3pjMmZZ8u1RF40;n))7rxsR zSb0a}zD@Z>+*#7@nKhG$Qx6<`kpCNU7g)%f(^D8Cqw^_MJ=XeSxu+;iDh05C7fw$S zjK*}D`}t~-I+X6IiQuj<#R|*`)+RmXZTu6sFk>A06&Hqcv=(AVb5GF2uf$rF5H3Kk zUDxds*-Hsar(Nlp?o$Y(E%^Xx$DHY3u)dfbM_4j84`+*c=8vz1hL9~pioNkZ=T8Y; zkH>UW&H=g^RRSQdMdL}C7LKLohv^BW@-3{ZhS#LTz3xVw0_WzG?G{LeL~|CQcMf0^ z(UV``?DkzqhY!BPb#gCo#quCT3qg^VjDQhRf%2vSZDJ6l31p`TF$FuqFh_e~c1!slJ>u8X{AWAIV! zvnZ}mHkw#~#=hHEms!523vTa2YEuvG4w<|#fv`h%B!L%sQ`LrNn!*dFp)>e-lk$%x z@6*Q3wd?g*BT;ueQ1hiJxXZ)}ec*>7kcJ+-j-D^YcDcpu1Of*mcH+qOuNrpVhY52d zGj5C8zNKNXd+@`)^5kbRgvQxSHYW?P#X6slZDqQ;M8TJ%zK=u8DM2LDMwBe>vdqh5 zi`J1|=V;i`9xCf0hUoH`#-RCNJw%WvZ@AFF=5^NXe~u*=k{DaP0N7WR&J)9!B64Jv zb}=4U8#SO8@eA<7fV)PLqi3&$8oPPGfYIDT*)ixfh}Zw3Sl|y>yN-H1FtNM)V@i31{y~VGr@G@;% zQ_q7hO>#{EcF-IFJ!ozBt@!2jPkWy?S9C?oQ}EykbZd`R*3(X{ow ztQWvtuj29?w2q?)IONruCZ$q&2Hj&3aanTzLQ z6!%jGxqP^EVHV`?r_Fp|06Clr103y;EddpuXI|2#-Oxwc-zsCT&5)T4{ISc^p#NSN z04VQK3*TOXbt?`pGk7&(wkS5FiHixOak_>FxSmav9vo`4MI7akG@HKpIX&$Y=`W@w z?r=Vapc9%;P2$Oi#YbNX426%2dB{m`=!5i5Ft{ zkQx5vwy{C;y(%A=Of~=Rb%#1hnQlzn>1bTND^^hR_}rtj9SC-fH>Q6Gp}{;p^IpV*T2M3-lbETvetM}21r z@szBIv7jW??*y+cw~^{r2bSe1Xp6EDb~MLjDBYR*p%OP;T3f*#VIz<_e%owq`jX3B zv*dUY)4acHrW>$b_CcI%XK>x-aWzo;@+G4zG>-St&)V$KuUOa+TI0iaFxArI`S+}uZCAGLMX05 zatjN@l+M`U&z)14P`8H)m&x?IOFII}{^lc}EGc0bvnwd=@j zXTMe~nj%4*ZkrmEj9+H7rg2AT90v5k5po78S&g1LgMv!ohnKc= zd#X>+U%4H&p?|7A-x&0Uy`?L@_jS4}Ooi&dORD@&cT0b}6a1I{?`ckm%qeZ9%FgM| zrd;Vs%(J}W+-r{0gHgq1lkw4~Ii*wImHGGJe=65uD5uGVBxXW!$g_uM4-G7?eK!@q zmM~Vkv;hBXq6~E|D1A+|i-K=JdQUBqCH@7Yku&G#J=^S@-FoUJSIe*TN58Ny(9SUw zN$spU^~Vez4A;U}#7+T z_#XQCwrMz{171`e3W9@O)pZRM72ZJ9j<0k3lm9XdyWVw!Ng@+jPc=miTgWai-ItjT z^OCW!Z}2YQsfx*D)<_*y*PYXczghu*hmDdaDl|p$%jFbZ3sd?y>c#jKU`rK6jrc3C z9J9NdcsO&hd-afo)j_daTwIzOeKJ=947HD6JaX(W)<_v?`M}~C`xb_98}7YCPo=ESSO4O%2VJLH>qNp-9hi3W+$5wHSZMP1&b$R zPq=g&N*(Fft+AJK!`jv~fj3)~=Y??0Jx!5xZItOKx>i?1oI+Ti-Kb+Q4V*0+9Lgs? zA1M+^pIxx2qRNApb5SRK(-}N)-Ua!2q3oC1CB&yc20H~6mRZI_G;IJ%aFfYk?~?stR=61cj=KQ+W)pUlrbAEmf-SE&_qf38 zuMG;U7u=87#FppCTNB6M5G<8T`o0h<0lstXeK6z^jtlK*$b!6D6jn55B;=vtJLpoo zdJ(G|vUobgHdYY*wFciVq5(n@b4>{PYuwIB{(HAaMGI^NC5R_08L<5{Kg#_PHJBj& zu5mrwO38g&2txG^ry$_;tZHSNM)#_$;sl%77yj=yI_3b;CJM#W;fkA^pdyY$XBFk( zGc%=c?T@^HQe_|kKYBjU=kDyJ{G{CjsO5PE&v>aw(O@j@LhKS(FImIIXI zsYdXJ*ncvN__KdQ^^IhYIST08q{_`w70Rfx!M~26E7*k~fPYSw=`p~q93f$Dj>SIl zJBqokEd<2FRM%=PdgRI$?J8+yYDuA-g=hqa|CLhozxRB#uPE{ntGeW##N5wX=}vfo zB)K#0mx9~QZyv!mV1N_k3e1Z%(rir8*G$M$c%ww$Ipw_uZW{x9WNsQSmi#paG?YJy zi4jktEVh;2KL@VGjmT~)FRD!rG0sV1X+R&=o;6e~nmofOleqBf6XMf{mCEadW)c>z zbQJx*74!XT&e^NwLdG!)aWGZbBnHO~dT}T2=xP~KV)>yl^>>p}g;9f6T+*9V0??7O zQ`%~Mh7FpMT<=j;rS=5x~|xL zOD(+Vd|Z4v7(oj90{D9pM2=%Aq73yS<1;aPF9(mjeWX#29nA5&($#!&(|)h%v`yxb zUYJ`(+}R_sxXpXm!FT&2=1b1_zrM{#IKTBtM_bRM&t0}#Tl}~rV))sDzd?VSXS5P5 z6Q$_u3g}I*=@p8{OC(_A$!6+!g8m69?vce+>irwi?)2EB-S1fxVZ!!T zef?HjwquDh+el@LQP@tP#hpf)Xc;1gX~DH2entYmrS0wI(Ou-g;yY?_`n0pYh8w-G zS_J`TL9&VsbG;L%(;BXXztggPik64RLq#+MX?I9j&t27?OvfrH&3VQ)izY%mH0OqK zKE-PXoJ39yE2;{*-MMk;N8nT1(hP7k&3l8$WON9akY8r-NZ#e)W$JnL<-?GXsS_C6 zKC?o%?(HdSUfsngbK$%Iql5vB68#58+5cth#O@@=_TXF78B-c>P_qF1AYe*x)8t}P ztj`i0ZM4UlZ7`XrQurYm``-{x{Iux`tI#5pcoWC%*X$nk!JgK_`1s0HQTq_4f<<(5 zViH<|=0d7ce6pMhoL<_eS+C@K9O#hV0CaXYVtDgpXCzW_dV<3uGk4TS<6-r+71gW9 zH{dzLDl0t?p8^>+E68IDrzkVnx)HoMj(a{;Bo!)ojbpkF@Pg6E2)JbfJ zmq5UVzJqYdYGw4VWz`&zqbecZJBr-befjN5@eA&c-Eeak#iIV?NDW@$Pfkibef%hQ zke#O?;cVgXTmj3qAos03yOr#8NdDRP$C#d~Br+=<12lZNXDa(MmEN(C6MlZJY`)vE z{J0$nE}VS|KA35VXD(xwQZbM4^PS5Z9AG6JK&lmRNIqrKKIT~N_k8TLWy>}* zgUz0*Ixmk@#WZ=VAo;h3%{JJN28$`>g zq*u$NSI|?`Zh!Tpssi)+A8?|sUNY+FBG256fE?()bP|-kyYC#HiA*xy%(&Gfd(FZw z_jL6Jha3fc*DACX0bP zRiNhvk9Zy8Z^&N}$p=-^;0qI9qou$?!PM+;QU&paKcLD#B3AGIKSiwG0wVztS*q!v zC9W3Et9mJz(J0Yg@L`Mr{J+m2b+cGvv5k!DFrjBe%Zj&_)#}hrt_x%uQaaax}6nVn1ZT-PIrCnqrm>a zPQDztIHLt~IM1`9O1H*;Nx@X*A?`u(A!v1a8TLysWS0>854$Fyz={vR)Cl#xQyM9t zOXuVXOaoe)1I3h}2di+L19BX8dc^Uu0D^GkV|fQyLVz{=9HSvWk@#gR;A1Ntv9S0L zjTLscp8w8=RARB{<&1F^jp)o=hRTOYSCg~BPf3pbea&X5dF)h z$w2i!%2)A@wE_(#y7Ul2w9$fBLySl#C!gcw`|&_&uYcb)wQi>b{@&{}@HU<)FX?5D z`L5}GbBW6x?>AZMLL0%e{VOB(C-{h#^qak&BPvoBrq}k-F3}^=jybqPjzY+-)FXYa z$kzL%F{+w^oeMSn$?EKF>T&gPv=m_oz`-Eb&ZR)+Un{zv8`@{ZKj|MFWHJv zFrTpNL^epfH+94F*LB2$r(GitfZ_Fs^dxr#>HzIQC;|PnX!cu*-gP`eXuXZ0e!6!{ zqJ1<=#McA!MMmz+sq3_|c9aTZA|;>Xu#zw(a|*xJ=z82|P(HAXjVz6(oDL??Gz=7J zs-L)d6hzELZc-clz4F+}7b)C?wP=`-I3;;H=ZK3fQ*fmKdkfS0$7pzf#{b9Oo5w@h zxBcTINl8tKEX5QmC21j%jFK(MQubw%$`;yO4aSTJ*+VE|NR|?lkR^EwAT~UY&E!Ij7Hhe2(LN9LM{pvYwHAkIxu{FAmP& z*E>8Cdp>|zxgvCFi026N=$8TI4jU@Y?|FZAck#z`;e8Ix$aC@YAGGpc zTbeC%`?;;pmxXs*o~anI-v&6M1Xfn#p)gdpvV<|5=dcEXMJHoknW+M`T?MH|%HiqhHCz2|Qy+}{tiFmJb-(X8$ zUTMZ@-{o;WBeR4&O}vcS1h5b!-J##i+({_Vcy>OBVaaPE4+;bxMhjLju7|F95Y{db z!Z9PAx-Q#grgCGy$@aLD9T^#NNNL>AD~1_mIk;r^u<(UGG+{Y+YhAy18I2vYR4@Mx zb{`Uc@2@(w=WU{N^Ea5wTu%!mI8h~>MOG!fi^#32y)d&A01nuXKsPK1#a%z?6wXZ_ zJY5o{+o9^yu9Z@MjWdfs_TWzCuZo8p?%+YCU3HAQYYNna-CN*(yhV=tG65iDJ}UHI zJW;-+*r;miN-UqiXCByn2k`@`Hse+jv zN>Ja>a#iRtEr0niy*=meYpC2XSU=zYATem)Yr;A6(*rU8?MMSS%t1^!ILxPrGo0TK z^MAPWgT!bGkQjj=p*J8z*~E1wlsxF!56q%-oV=8;nvXRuQB?cfCzz}z!kqt1n(fjl}P$7KWNsR`~@JMOE^e`W_B9hD$ z0{ZT6=XddMu~CKsTw1fM?iU9@c(r$eoF1Cj@{l2U{-xv4XH6ky&xw|4)CG(zwW%N+ zvnTz_&3e%>Kl9W0;_BN62E$ACIgIG>4mjM42)q)#nM0Im@&OPM2NAHFSo)pH8?v+- zUEPi~-e|wOF$xd{%zEsP(ApDfb-~F0bb2drzx-?a*4mD#Y2}3sz^Hn0$S+bUhnc_ic(Sr^yCNcz5<^O$xlKedMWl%NM8q$=_Tv z|DFGH91jW`?muLMe!-D)EAQpvOZ%kF$4O*a{~L3DpUv;;sLV1eL&l4jLX9qQR8saY zUIdNX|Gh4W;T1sTR6*7Axf?FjQ~K_ugJ|`Q!}p|`ZZc3aO+%-|7$+OO#O0oD9{MF{ z$#H+y@iqAgA;*tT@os&6ORC&RC{yl7!O^w7(n!pF198F0}=eg;3?Pb21me zKa|nUpOKc+q?=yPvrjD)20Z>ZFee>lW-gmvfxd(o$LzOHTb;}`&KcPmVO7Vy1Bb46%m2Em-*$3nW@Vjjhyqs~9d!wPl^ zy*<*bOmca`a{9V)NB!Ikx$vRCHveIX&)2;V{wAyb?tha95NUZY@&O|cjH;E(^opBXkrAS^mAf#={It#=Op2fyHV2uQzpqjV5=S4>$wX6eSFr72M9=;8kWmCv0%M62 zM5CD7jBXcyiaM(7Omd9mVCA6Bd{&LsS3b&{68id7=CEu~uln4~G&P%4Q+(xc`;tS< zhG-?JQ`)Qy&aWcU(p5@qLSUYS)tPpKgBN!>H-eOqe`)WoCB)*Kr<28E$&GiqJVS}i zWhsP6q)X;~v6mDGXlOF|Fk-X!DdtdV@>}|y7iT@sN*86jl4lF^DT#QYNpVC&@wxv} zL-yYlTK`}B{keZQ6XXfq=UBjN=<_I?-uRm`nSbizs~Z@y`k`LwqzR-cfQO&VzNejU zg|k%#aZ{J_mu@c-9wUdI;O8AYxY<~6&oY0>WAXJZMD_Jfq`x27KhIX_%>J#pqM~~H zAgz{%xanqaARxL2AuU;eR8M(WrpetPXH2YK! zaP#ZC^Ki@ZFfQC3R`#yJ(mO%G30)gMbJj>EUMa+Au0 z0_t05T9>v0dK&Yrv|90;0)t+8$msfizZUWTgy!;p>2LB85xAiji1~XR-{DSPlNkZ5 z%BsT_IXaj2tHUz^QOUUzvW`O~>vN3E%hPHwbxa$KbUa{7W!a^u7Z|sF zgP{{mD{NaQ5auw3gCw66h@ZJC;^vN+8Kj;=JRIQ49h7oD*S;rg3T}j5n!fV)@g-$a z?Bv{67!2jH8eV*5$08wrdKmvulc_^{niuf0AYsQMpyLW9vOMdcNytb>lbZoTaQYDq zfMD)l9GU;~-M znFELChYUa#xPrmWJDM{RJWN1{I7Jt+A`gcH1*reKT69VF+(b2QYrH-r0^*9Y@7(;$ z0{rWO{Et3!*5I66S0v)**q+*~P)(*N?!yMk9QziO7E3Dxh=CgL>X0(O!6bB;V%dZD zRaP}1B+!7~{j)u1q6HfS=lYLthx2EMntE)tmS-AZB=jCaT!o&Oj6TUwB@LH_b`8HlUPT4p zM(0-Do-~htvLth)DI@H{h7Gm1rfOhb!hb!2e*28t7EXVP?dmPD!uW?k!KfQ1H3&GI z7CW0dV&8rBw1_RVat_8c-2IR=xqtDKkp8Kco&Tfq|BKV~pUwBr_oC_FV8Gnn1t6~9 z&0XSUCo0G&0a*|Gykvh3gS=}%f4XV|XFLz;E@uO8>5p}f#zAFs#Kl+UjO4#t_jRj^ zzZ(6&Nb%pw&PI+tn#L`C0Vs4Q{w+7_5q=X`>p=5I_KrZ>n+t%@C$K`bSMy^wPzKpI zp)~JPul`0buAlI;3yts}yL@^b@Oafdx5Bm{MGms;E{DZ&wV6%?9g6SIdA~#`bZUX* zS&I4e=%M%~rSUzFUI|O|vxkl%^`$s7DCrNKOLUWa9k;h1d?^R4pTrdT9Mo>89=BCi zSut~fg(N+VVGL-C$pX}%@l@Svr4^EGDqwE>M^bm*IK2acxUV6kS|n#H3frBCED{v~ z7(%OYStUtw{%(97G;r)ejZT$(eVamL>+leAm=^<7|CnF$se`q)?j=6Q2dn^S2G~u zY!Pq6L9xuQtGZ7r;bm;9?L$c7crr^4%)90IKd9ip$-n>2|G6JRB*eUy8<9c7jXHkk zO4eJ|`~#Nc1!vs=F63(tkRUrqBaQtCH~L@|P5uT0s(;7dyr*o-O=j0s&O8clK#@yCUV?6pe+~ zCH!HJ|GFWB1`bDkpp?Db=T>lsv3i)k-HEcN#}CI3%wM&eC#08&>yDy#SVl45MIu;t zK_!lyvq<~mPjm0Jz9Ok#V2rMq$e8~z0{#sHfseQgHI0H#+y5 zCY1dQSlP(Dp5j_XGZ6{d@-f23w@|dn(v`k% zt|~ZQZByqx6P_wwF=IuxV^hHloYLN0Ba{5DFmQ{_870UEXdl|{(j}%!j>B%3 zMyc$`fiF8=z& zIQ2qGI%Al9RK;d^_ue}8yweBV<&!rD*UWs?Vvn>OMlMq`IH!XCjaC2eIUmwig5L`Z zCvh8S{{%4dhg9(A?&Rns9rL1|tSr9PXwmQV?&e3LyT}DV!@Ov+`x|WIy$a&u5mS(= z-GC&!fY>m9X#{gcRn$wM9#`2V_;~MqUbJ83Ao`53hys->Na>lt(YwItul&5)j9-w;G;bw_ z^dk^rSTr=q5Sqcw&4OkquQo$8oXt+!ToyD6`hW&~IEi2~HCZw(>wxM~XZsC?v*#o{ zFM`u85?6Z>26_Qb&5d_fyWS1D-V2+a%vOW8Pk?UNu6832Pbnx7{_$c~(&oyb5s>@j ziaz%J%`4!|bHBe?iu28LaJJDc20%Pua#+=mS9@0Af4sT@HY1g-im{|Pe1kn*{T9fy zUps_Y?a&wLh~GPe{Ha3$s~sv18pZwEAvlw%S3rMB-cb}I;3)OH;4sn@Xl}%LM={W1!uvV)fta$i z@7mm7?qy>%slxeiax&OT6AJ%FlH=;z7e{j6a~TOsc4UsX^x{VzKsyQoD$B&~94dMV zjVY%rXz0SOu{_zShe!ZTd!SQcQ2I4TaX!xJ4qlSkiCB-jnqOQLTwQiDifLi`I8YFa zy+E&VL*(ksP+f--0Bb9zB~D@v`E>l9KuuYGpJzjtlm7A_7Gf!n_V zVQJbt=Ton$yD4v}l4D45RzgRyjaX57D5%?Qk(Kz`7jrSAR_HE4hyt&f+YYrrQsE$` zY=Iz`hC8%_MuzPRZz$`_<{X}=ltB!q2e=$0%%*sT27HK)ee6=}t;B{~=2ExEZ(0gz zJXP{a*lM%7J+SH5Vs|?s)ST*qsPMRm=k)IygZMM}{g4aiC z&AGpdbU?ca&=0Vk{f@BIC})?qQzwkxhLq-V)Vn&40ip|Junb}H7~S@gS8-Z+u)D&N zZ5^G|Hm~uvw!Uh&|9V0o_88q`VF+HUt57Rqc+{R0`BZ)r{@x?ieISmoV84@K1teKO zbq%=TW?=#s_^7k1uCU4ZPhk$+vDh{e4ul_Or`^1o7oj+W$g8IU7tJ-~ z%GOL2?M=yc;-;^H$Z7uc@%^}~JC0qWpmf#P%Sbvk2@YtE{{e;kk3gS)`}-HEY3KSR zepy`G%H4v`C(Wv*LCpi3ib@|pb%P&#LN-(oJ83eekq-9FCi=pN?v*cdRV0&*mtVZC zj`(^YCGmn2;JWw8rVme44+_YY%3qJLc_^^|eYoB<>LRW}0YqfV@-|U6J0)0L2m(>B zg-79e+Ct4jk=#R@P8_l?`ekQnSHvjdEt17Qi0UjsIe<(h9m!=u!Ws`)U9&4Ul`fjF9iP9w|yi4cEoZ6G8o^Qua4S+IotE5C6QNu+cVmmsoUi3FL1&eeY-G<_jTn7GPW$2xtk}|&0eY4^f=FND=g0xHO~;bI!CLfKn6{s;NuT8O zxf=#4RZ0lf;x|}b6XK6cuZtiKC+nw&|KW!dbF-q%!#x-o%E8{R@i%P?3#xpw?{u1U zBVluU%IHY4PT-T0NHYzyaIAC_(nW7YLMfK%3s@orCW*O3Rs?cAfIA-G8oW=5eYbY^ z3;Vp39P(^kLrTP;i{o0zW$BWeZKJMp@+=BOTopE4Pa`O?laQlNzu>;&3{(-jp%z@O zZg`Ee;KfgFioM#sQ{@NiI!Ui_RXmfZg-+a{#ye2a0J*XyAHiVa#+{~kV8Ej*WO4=s zu%|!_xj&vO%LH7Om%hRL1zL#{8Q)-Kp$JN4u^?+{mHgw?OW_<_)VrQ<{-WNUTa8o(> zr$0YPx6%FeHJ|bfImcvw|Jt3KFJC+CjzJx z#NWrkKmp-EqTPGFP#ioz)WWFHE^g4MIL~TEyKiT+@1i+F8WKVQYbTLNr)IlC8=QbO z?Np7U9R|@~7x#EQFO}jPlV|%a!dF0Ocen_OZj-&0;CL(VgFw* zoxT)#E$lmjUS@Rx|2n9w2SOVWA#H3PGTBPiyCG6?2>Sn4oe96WglW8 z3H}@s{d}tB!QB-}=jJPx_{w7QF{}_kzhcvIq$5^FKkB$$H0wGNbAn%*dkm9brwYm^IVzO7C8g`Er1Cg_<^ z34X;md?o-m@8^by4C*=90+_V~`1kIO|8!aQ3e3FG_wIdzfv&3j=<1Jar!TKGPF{*? z_f|3fyC-yLkJ;}^j!<~EdmnW)fBUi~5|I!u%7r0vvjkGABUTjdA$gai@>Ya6k8zb7 zg2-}s3X$x87x{h2$0Gfo7PrIV^2sVWWFW~=)8Pj z(-jerY(L^?ye2f1#5+f~!2x`~#kF&Fhs%<`!B%D&ag6Ms@4E$6^$oVrw*)rJMmi4i z#HN*Hru_PiY8_*)lXM^3idwIHa!5!cJekww(_=InMj9d;K8m*ZRBaxek_S9sUp*ADBt^BtM;T98D&IQgVepG zq0$tfD5}G5{ALsWXaE0ywZ8QtX|vPtzThN^<^wkwYdap9WCz$Oiu4$~r>^26%b0%u z6-$i-i>Vo1xKT1#{G@yYWF3AXI)@AC?Nkw?d`j8*g|w#k8aMrdQzSdNY)>6i3To1K zpq+nY-DrRI{E0nbTKoi?ubu(b;k_MXVr7iIThlK)O!Q)1?u3{mnBpqVsqhR~tq%_* zuRMg!%CA%~4+F9gNp`+`U&|JHfkBD0V%lfTxNg|8Iis-_N70<)&?E<znQsV{2tUMDWoPCNs5NFlq;t+i zvLh|QCQNwGo-@asH#K2L=q8ro)nbSoVz8txk0K*_ZAU)oaAH_(%~6M#^}U)WjD+{b z(=zTkAC+=F-zid{WYxmHgKS8BFCDVdQ42DnTz#PpR8d;sOM2J|*_pw{IPvrYP6$ZM zhJu9rpAhGwP*KP&Du@c|Fv1d|KAWgQF zyRY-2QGt~BKZ2QDH<2PLJNq!_DH_QyE(D#Ahsgu8y>uommyWwP6zWkmta5*Y+00X8_3#j%Zpo2uQX6hP z#?yhivEmnz(30n7nAB}|60*WHCsajCfATCKl(9V|lpRI%`GnZjFT|(WEi|WmCZaOo zsIo0#L4F)naE;W%k|2YOxu!F6tZtJ$j9>v%wu%kDU%uSRedq50g4G zbv8bgxMr5SOQmGIj0#qsGwVXTd`r)Cvx32yuCWSjq5Uhj;Rru|{8w{P)UY%nkw`Jx z#XYO2GPp8-9=cA{Ar8f_yU3KI-zXgUAVg>c{0RFV%0Lp>j*f)mM$feQEHY&!?uipE zzQJq|JWXU|&vaFc$%eP~Wc}0W7pQ5v>h39%uK?+9CD6}!Q2@rM&wPa=t%Ho_>t@`) z!S<-tBK5vVf5H9DH&UE4BCAG^^u#Kk-#eT)&d&LE-+8Lhg8665L!&%?xhp2oxT-E_ zBd+y|9+T3^K})l5TBTowThOHeeOe%Lt_tU;1-gaune8xhtv!lNfO+hjt;Y>FIikM8 z+3QVGupo(G{wzxZc+0k~GRRrb05O%1A4`V*lrpe=VtZ*Ie?plqK1FN)>@MK!IrZs&)v#FRefg7(}o=ZUd~?plnlt?&@bG z+XKcFFT{uRzF^2!S>2xR?^S$WaNYQ#&nC+;XV){t%+&c7IT<&Kzg=pTWohu27O|^xOb5N?z9Fslw@)Xy-sf( zz4-Q+ci8^EXNz@m91I;M7?OIw3~=Q4eS;lCX#srnO*G3qw#wpt#+|XI+s(xDaSX>F zXwQlTt&^Rx1o!UM%4?r7pJ&X%LJmaUuH#H1ymAVo+EubSYvWS$X_+>gKEL6Wjk`}w z;F6%+q4~9951`-cAhuv!A~n-W+t=GV2*2~c%ztNzKmz0_@pd$HJ2sz;qZo(o?NFz0 z+>{?(@=I&hSQ(!@4ENf68Pw(oXT{e>nb!_9pKTmg!GnmhT|DDhNnCw2aQu_<@Qe-F zaYgt*#QYur!7t73gM92c$B^_r1XctAbg;V$6gNB{O$%Bi1QUm1i1QjHn%`iyn}NZT zdeo#>V%0-w(u5Z#x&Zbi z7!iEtZ_B%LGuyVRA{IwcOAnK9p1Ra?|cWG$%y81dNY3&W* z>FNS5H=h?QVdR1cav8{fYj2gh`V{dpCD7WGRcthg1OcRnlpan$z+KVNVFnB}O?oSL zG1Q8cD5emr5_Al5BU0joo_4;hI~})jj0XIyJ`bh_x40fsRu~SB&g-;I7!GN0#~k5Y z%)|*2UE%)UU;<@`X%UTp4EFQcEc{qq&N89)S{Ff1k545%?enRuc1z`mM&Sy?ktFz} z1+B6;Y>tMZDz_=shhG^z`YbFui@6(kL*9b~rV>M<%qn!swFY22QA3*np11w8Kp9im zM;H~gzs{Vk#SXv9hi$fA54>a@BfEenVx|++#ubPkM&{#e2H1i3tlaGyEl1+opL-(@ zF5QLKojutK3(O)Z2XM%1zr$hw%TW;2p5WRy!qXFS7g{#ijMQ$ojT4=ZF`oS^T zweVCAZ060bnA;bEi&6|#2_I#9Nwi{mh0`5^y@!T(W7?S-l@6YF?8KBcX%`x5_T0Nu zkGooW#uWyA?j7{c+t73OZ1H3Ft-QNV&={my(f8Yfj(S9MFB0mB^u2P4n?9-Rws!Iu zofQmm*=zgumXFt+#3jb8FfYf&=vobF3(t%uBH9bELmP||f7Y>8e$%lDXV@=^qXBe0 zR2o;pqzPFOH$DFbyQ$CJamheil?#oZ-9%;7k^MuQWv-enWhU7c+*jQ59`0B~1;*Gr zJSF|Ko7vi4kSzb+pKGijqE2A=8;k?H{tKQ@Srs}-Eq?#unENC1dL8l06xCBFk~ZRV z=gOTmYkJ$Lq%clB&y()07J3Woz5G3Hp)9M`SX4*UCU4bP6Xcxr+W6)R{UohU7)(G0 zhQTpyfV3C^+lFKcG6;5~F8xWP#$^5L@Bja)aj$}O!??f$1Ip~Q*Na8)C&iXiQlhuY zzrjRkh+Y$#5!k)6dy=P$u|*~7*Ex(rAFd6WN34r-V>+VC6qq^H53o8Yhl~}IDecVA zlP41`DDa`{;S|{_=@$;``L-l`+^O-O9~|;)&b-NMLB27Rc=*=Yr#eOR@Y$TbtbljAzjBQ@q z9{)WXcHY{O){k=EEIbYle-gM9L>B&Mk3I+Fv!cB^RL4r zOWaf1iEFUO?L7z&iB5V#-IH(S%pb%>-MITj#fWhE4LcS(rESL_FURYVSWc57O>Up=4k|<5p8#(@5MFr}K^P2FR?HzA(xe_`Wczc`E z&M3(9lip5jBVKe}jQO0wC)q0@+vgt@PfYtZ0fVE)S%G$oo*{#ANcns^qhD)lBKfxF ziDqru^Q{-O-&qnG+L1T0LX)@YxC*6fA%oZxmk#q@K4_>>1R{bw!HjUmxA1ZLPpO%CZa}4!AGwj&h!T$vjzGH{O7G0bK!QX1~*nMS`5M6=@m` z|4T4=J&yRQ5=o_^v{)+n+pPsUo+B1&aF0Mz^A2Ti9>(-`bWB-#VYht7jraqqJ9R}O02s=;2I8h`_bwSstdGdB~RNTWLsNFZsH4=6GP;xiQ#Jn&S|rGw5v{>?p(UXdmOsJ{qLUCRq6kwj@Pk}!9#Sq=6d}I zSINzA#&vI_pk9V)uoH-~JfN}K(<^}TSl#L(RH!gdh(X%6tQ-(K!T>4e7ytQvRm9~s z03R=e&u(RIp-a$0NLl%=TkE7h_oY?$R^!aU0YkrwuMA%yBiS^-Ecq3nVL+n_&}K;i z+z{w1gLW(j00OTKUnLTnZy55Dv|&5V@knvbSJ7gCn&HG!qFYdCbEfSzm7g_^Dkz?U z^1E33z&9qWqtw`{Qf{*nrhZXrzBYcdN5m2#73mTVaNuwz0BHaY3`+8>0>RusiBmxW zRct@5>N%Dl=P?a2U8!k!x+JJE4V|p`26NuQa+=f4b54Ta?}IjQQ!?q+%g{HN0=-Kx zln97)H)D68^$e+d<47pyj^Se()@L+uN^C*EuizKb8(T@-+NbKT{UZOGk@bsK?uA<; z(S%R&rl*(FR7+0)w4sk( zL|wC7lX$p*ubd=y<8VXz7@-7v1bw@%@*9l%YaVmGgwOgby~+HWxnMVuZ=6FsP#~#U zTro(vSH30b1R>pNoY)-zojs)n5fLkK48tE}ljQ4VV%ddpwb> zZB>x&2mpFjR_hoTH;FHp&<{lP^p#ez-+rDw9aSBq>j`IV8*g_)_AHzWL-#6(8U@JT z1(PSfhbl1@2WW`i`~@(c%6v+X0BqgH1fXTM<0b*4)I~5;=0KAZp(5BJN&(R04=8(5 z%^*bwwIX2+Y^t09Fz@Y8rDs8Tw-wisdovq{WW%iYMwya~O$x8~&qsw%pbXl0>N+UHO3es6VETCE1Xnlhvz}(@!AU7q7xX~>fZZ@Dt z%RN{xOhosCbGR2t(ZWBN$e&=dU8#h(kVps}c>#n8g9;-VeX5AH3M@VZSJy9QdkuJv?Er4l5ZC&fEu(_Vf^*K{*GbfebWno~(>P z&9v?&w_{vkdp=h)jN(2}jlGrTRI zv}?giBWtLX+qmF~r9%v1d^c|s&*-Sz6e@h+Lf@&oE=5?bdy>3z3UVh=pdOF*r$@pL8zB~fQMsTnJ8>46-}sCvg}Gk z_}K0#=-rmM`818t-2!*OcNfbf#3Bj*8w+XS0)dIulX;&FY@X4$Dv&w>g0^L?FH$>3VxlRrsxjKv z_#F8*Jt{BBvF!-YvZQxV@j7%}a?jW7J!Z0Izf`%Tk6%~j1qD?Bcu;BOIx-Q0Br8x0 zZ(R=4EzO)rQoI=6;C+w@NQh!~|PdM3siU$#^3P>J7M$B)qa0C*AkRkM` z2XWFsU7+YbqXwJ@0JMrSpwMs=zlDWro?E#CZFqZxdEk459BwhqoDu3_A`i-tSRyH{ zc?Rm2@BXKn_PtAnfUWNNb`?Q3AwRwdd#SWLNDsTctgbWP$yrb*k}+@OGaxz8Tz4O} z8${Y;%HZ?_FiTs`q}s-@*S5pIE_9VFgYa+WCG8=iAHzB!x&H*-B)Fk}>*P&$Wc2x` zS__0eU%(3f($V}y;(EH5gpQ|#(8h`uY<@TsU|JO_^0J~%`t-TsUGAgNB@3G>mlW&8 zfmiD>vi#qWtj>z&ogqx1X9RM`O0W5xxk#Yngh3?7rSy=a2lNJ%0 zB7rn#s;N;qs7T*!21kTg%-c*HPb}qgep&kP-k@aSP*U;auC44eHm?61yPlGer$g?8 z_Y)YY(AFu`eXIht6S)bTx2SE?1^b^2b#@Q=vOf`sc>wbW2zV{`-r|?swRJ+)iJxxK z`6OnKE$($Xu~$QTcj)7gof)f%C(_(i3EWjmi%J6t{5QWC)@L*!csZ5{&Qwj7K!JLP z+|#jl?M>Cmn?D&edzw^Ym8hgpqzgQFi%foWYfhZHv3K~AEz(o|_&trB$e?>j;F=qX zH!mGX1%-Xkmi6t<4=xvdV0}rS&GLAQ?kMlo8rS*o&Ko(T$uP-+8gV=zy6OT;v`zWc zK0fnGfv3d`(tVbG5pp}y5x&u)VxfjSoiaZ1=;&*J)Rn!OpbDvxiJ3u+cZl zeRuMdkWL#^iByS*vp>OjB9q?yv*?Cbz0n~a(IH*!8TMmmLg2}O>p-8oikF1U-B(A7 zFiN46y{HhtJ5FE>miBvC;Gs7mawjo=(X^z9+$DZ7!SFO*rQZnTBg zO3$2}Mqh+@u4-hG(`y;SrIWb|)^VV+c%1sP{0oL$IT2a{^60RC_3h zk(lxLD+oi^vH>q$CmZso_y^?3FfN!1w5crAMf4{hx}MSX6KncEure1KhgxPu(^!Y- z>BG@Qx>LK$onJ8Yxu?{3E1NVRDg6v?76rLnkpvBhaI>hZSMW>)&$jmiWd^_vOlieU zfHMWi8t`coISF`9fu4*(P{30KKRt!~(^I$>&L0nLj-riLVT3wA%m8)f4-I%dZdCzB z2|*o$`L*FxPV#JRl&e_JzFyxk3A&#bo~gWv$b}I8+Bz3R()ch zv(c!^IFzs4r;f#VxBPtT2*SCQRO0V{b3ga&SdtxEbM^gr9qy+~{$vgHRU(^BW1un{ zoCTC!KLlmK9LyKMMD^%~t8E-FlUNukMM0$iFKgAs%>L{rPdU$*dw%4-nfQDiKca-K{C|*e+Rgl5=j* zpE$n{RI~Yji*}Q5U>)0CBAB*yKmaoO^gY&V?Zv*j+wpr;rzh199;fzYn6`?Cm0xvmUXtzxX|(4U$Pe<-0t?Mg+@Tt4++HRML_Bgg7+iTd63i)zL;Q)B}Tc9awduoRGT$_~B<`%`Rd7 zt0o`5zl@tT@5&rn9o5z41KM5&1WOLn5Kqs6fW=C=4pYI5o!u8tfTAzMzzg3 zYa7?qkh>D}fP8EK`kx0?7#fmxP)`nPJf$?MDWzp9Rjs?Ja8Hh-yDb8Bq>kx|cD!u9 zck|Qo%jvBBVC?(EK=|r`RUz?oRY+V14ezGRfnY4KOKza=v4EiBfidjFLr5P7e}6cf z?i{|E@k91Zy^OI{rV*8LxM5Pv-RQ zX|`<$aGF;Rs=g}<`E03D4SN<91Y_I|a@3O4FCP_CSMuf~?nVx!1R==;(61k?;-q30 z*hW5~z)By`{aq(7RCj+*yDooRU68Jpofs)EJ<*3nu>D#?Roq+lvvt;pbHH^Z+XfhdV>6Ep*DW* z;IPBxkw@jXP_nGObQvx5#fKLQR5qi{@&Q zVlKH=0XjhD1xkdo;=6$5GjYa6M&>?lG^N`1!g-5H})e=kQf~VH14@(?9VruUL=}15#HTcWotz$(HRLnqaLyJ zbZwjT;fBrYkmtrB8Fa1z`voLrK}ViB*n2491oKAVBVjGJN9Vv^I$|Wehcxj#d7B#jnOYihE$nzKXT)L?mVj+gGHr)=(3ho{ zT}ME6d%5}+`qgf2v&8DW$U}?L&+H0c_j^{yhzY-qoYODV+I2eeqbfn5l$~92gchj# zq$qK{HlI>e#Qo0kQ12B_h(}i;5F@ZRc3(h=otN#smlwn>(9ebtX-?Ddp1pNO9a!$k zC?|zu){c7z??#^2zT)MyFgK!EeVTaz>QveGrhQMOm3Srl>QhlqXNi?Kwg}a(MsFjF zi{kd?6K3-DELp!+uHGO>f~8{DX}(}4#z_V`i)*zAVOGJ7(zD1N)F8Z`X`_}Go-I9V z+J~_pND^6@9zxX00uh$CF4gljUFU+2XS_Slhr3-B7B@$-k6F)VId!Rsc8tC+OW5Uq z1oUq5K-^oCjW17aIv`!{f^-_(sC`e;SjSE2Y_;~TfCEQJafD>3PmGhgFW81M>-RCr zkyrKVh7M$?7DCOy$VFaA<_7dhIg@wyz3q4Ihg>i5tVZM`{q8oIEjF6%EqQN^yd$>6 zs)2c02@IEUv(rlyfH!rUI+=WI@2iP5do4wlnk>w7TW7__X?F_(*XbzMoHSMMm9AWJ z?QN`#_^h`npx4D3*4J;-5aKqTMpt7Rqcw+{({X82x%IBEAD863z3jc8m&TBuz&}L2 zBUQ}>cvLG{r{21?X|!eRc^=BWlv}=yPN3l_IA7LA*I|q4r(Cb8?im^JPvEyyXFNp( z0E7X zY;I3phi=Wswuw8h%?!dyI-yPMm&($^jg5^$>9(HN-=SvjJ22%Z$Id#*vvOjBj)fG6W>Q^8 zmg~X=v8^K2jPci`{b`vtHrG{56-WBoi4Fh^?k1|U(@G3dKTqG*5zWfrKAgiXK_x_j zgDnNc0a7D1X?Mc)+GHfS4qX;=S4GTaOzZcd++P?i9wiQi^#Eu&_>yQz3}nP;&R>xM zLfNf_B^j5_zKv`kng_V1I>|IUdIG|hOL2YxT-v!@4PW8QCoq<9V<-gl0UYHR`Qa9R zw2!WZW`5~S)2}gyJ=xMT@P{DoWE!=arr%Iz&kiPzUZKKS8&`s0%fKmuKF$8eRU>w;hlb98;{KOO-31JA~CzJ{15NV5xZqX`AyJu3ub`UU`s22>6%jUncf;Hp1F+{;&vzc5tr@?#w< zH_s{@^WcFMSUWJ!faxkbvCUgXM7@0g?L zk)OZY?DxVK8g-MyabU$h_#}#SJo9)hg-gZSO(8en90=Rd*GdeRXE~3?-{-N?E^xKH zyGYPvhvA%C_{`A^J)kRZ9b$@hYBq*;kG)VVmykc*KG9G7a|5M-4azwLXKa@P)p#gG zveoD@nd&1AM7PevjID8TkHSy=Aa|XJi z1r9iL_OU~NnYtS3|MJJ!|NIyjd$FHqYx0slH;9|7^rmpLH;UlcbQC28;^+28PMUUn zgUtaKm!F3KKgR^bQ{s*#QsZ*WQ9g z{`8q}1{BX(UM*(()6JB>d?uX9kUcb#^Dffe;>NA)aXF6i4-`T2sI4qHOP)LPj4$I7 zg7N|qUW6*!kAZbav75cdyp1MW(qjfUtL(IpXvQMdZm;K!7%xRFmbYV7^Mq-p^HhakP!h&yaL3 z-5)E8Ih((o6rrf`Xnx1etJ~&KX~y@o-CcK5pS=hY*2_uLuEbR#SxB&1Q9m{-FvI@z zSpY1DW8;Ip7DM4aaztMhiK2YUY{)iEj%#=QPIJ#^Z==c5PY$u~m2Z%TeC_V+ZCg-2 zr|0UptoOUerJKaT1aXuf6!exgf%6N5bpC0V06~X<;aYRjfpH4<@^7M0mCgzIg(4xA z>?*kSCt>lMJpEZ>@B>5cXJH}T3S<;`og>O0+CjmG-c^)K5bv#Fbwl>H8(C_tCcR={ z%pxq#0SgHji=eEFG`5>Kf5INW)P)4Gq@Ps&{I%*1{#BsOz${UmDiG_p*i}Z1Z74A0 zu$@yCaa-6o+rwjtQS7hT$CXjvckoH#~ z?@?{I$ur&xWjri?%7x@1Q56T)Nn6R+-ZAzj`xdhoAbzAbm{9XKKzss0hbYId>{D`O z`jql`pFq&{AxaBuOr+zkb5zk zWZIe1F4q_QLCcgJnvgrW&S{=FG6%?rK; zXm+^DX1anYT{hivz<&Fk=H{Mzf!fTv-clmOulMutR$yz8^J;fnmIuLEBR_YSqZ|mo zKnjAr(fIrE9Zok;`D4UQywrhDpYj~T4W9lKz+OR7GQO&;XCd?b#$v1DJT!dwgn$7V zw7d}0n)mkbS%XMjOfXXwgXv_MWFyv~g?7aEJlRv-SbkQSZ~YvQ#?&dyk&#(6U9cPy z$&GW^(NI+Aze_p)R0U_2`yxJfJeIPml~zv5TrqH$|FBIvZ{0p85vCr^lZ{`T^J5&a zvie`Ny?H#;ZQBPtQYlL+`;w`M%9bJ}%_s@Ego+U|ZT66mZOkZ1*(QV{hOA|olzkhr zhh)jv$Jp1*SjI3*@2Rf)zOU=KpXYv`=ks~rzw(=AIe+KxIFIuYi$(|P#VSLm9KdGc0#6Ow+I#7rFj zQvy|JV-@*=Krtb#pK1OrEiPZq#nheN6ovs>;+t9+BL7YK;Qxo3!e$M^svXOe$nYMh z^(uRqxwm<1WQ;;>x`(=mipA%p);USX=zHADniGENb{N08!P;0SC#p07=?ex$H+VsT|oMI^N%Wpk1fbb44wRO8dcAGhxd3@ zLxlucc|J5lDO7DS^ey|_cYNdP6Zvwyx|MF$N9p`yMvuxW%Gv{zMQ6%eqpnApWby8GRKaUme;s~d7Z>MngIhk1jDeT?Fg#0m!6wDrIYg99I* z={eYsGGb+_@fuFqqor(HEC>1W5EL5Fnc2hS`-T>rQK`8FQ5S9bG8i?qp3Dt}z_$0I z4p0W&<^>!d&ZDoKdWw-FUH(a@JefO%FnBc}?&T5z%`b(Ky9p6Um8;Q%`yC%aI zu(3PmzREXMoS?=vB0p8(g~P`}uPYY>3>+*ezA~Z=kFSq1iXTVYa>nrWLj31qU(XGAe+ZJu_wjMuD)>e z{WlfTBRiT7Zer3n0sq9!oqWT~fFAr-T6zXQHKc%Ym5lIrnpS=c0zJj5L*C%_Zbw=; z95jpMGKH;n(93HdRw;aQS!th~8gG=b{3cq}cZpszX=CS)pD-rj0)# z=72e~(kF56-f*C5ug&$;UE!socaJR^RyY?$tG^Wh$4d=K`)<8w4{CHpJTzBc!GG%d zf$ywRp=$^;Xw6jK@w+^GLAw{67RXQjM$!Hc<+)}V^N!cgHW5wRoDtUob@StYOw`@4 zD}VibT7G2l8B%nCt;)0#zZ><@-r~Yf$my#=k!~BS_$#aww1UAX3r(sZw>(1Xe}LPM@}<}0pgTyC&Q;=c3$M`2#WqnBW4HOg z42EIT{hifoF}s-Zbmc5^`R|C9}g5QH#42cc)IM+Wa2xNF;%MkU7PrH)`qe$Lz_e(7%(@n4yAedfu?I zI)IFXLOlGH8{tK9Vf(2<Am#7U!W9SL@Km{x$4sf@{9T?4_1{r8i1$4Box-4e^ZzhoB|tYDDug zPg_%7sZql(-YaUoEmY1+*cy%8A1|_EiyqDo--d`x?910#cd6g!0awAeVxMV%a*u(x z-TC6;i?IzWnvo5GO6mNoYAaZ#{0`?To>`b8Ri4myplDf9@f9VIGizoJd78;VzmF?e zTX>X5FItj~AJ8woDnU3}&C#{2wra!_bZz)X7a8fG)Mv923lH<|2^td{jqQ$mcw;?t z+DDElp#3>C+dH_PeK<_?UeJK1K^R|ZL`*)zle$+RwC5f5g~n0&N(&v!f_U?;Hkb3` zZ+ID?_0EP-3eN?S`-(OhTkS7jP16Y+{erLBSxXV zYayPmZ^sT8Z!?qm3WySCvu9Zb7Wp0XhHdqA_p7tZ-86510&$ilR9L?9`SJ5Rw_I)% zI@vRV_5eL&s-zr}IO#EzxjJza&(;M@Nf{sE^XIB5it|E5E(LB>@?DbW`aPh9+v+so zN)fxh>oW)a z^iMd^^y#{pGnm~KS4a7dA30d)*K?~pV0f&*s#T~B1*6;`JYuRjWK;*Jx&?Vb>vVl* z922IMRe%zU*6+OIU#-Mt<(Elp9uSbqfHDKI8@i$5v?5D@5k~MI^wq0-mO5}E#{>%O z9v$p4)$on)8rqNossGl8AlV582+ur4X7+0G!wtmv8gtK&FZP}bI^*G~S9eO^Z}7(V z?6GWdk4^gAp(7-l0yZD6vs6y@g-R!OC2}1BVDDbcFzW-L_=HhG8ZfoMH!1_XC?3H! zUDllk?p0dk8D<38YRp9hFpNfSL(uryiOfGBPphCd)*!_!W~!t*7S$wt1QdFxfuLd6 z*G5pHrrP+@uL4dzNOS;8jT&#kdLKuYZO|l^Dfv*{^5P@b2ku= z2qUSOy_)Le8z=rKqBOiytjv)Y*QhJm@9VAw{V0eScV%jhje23YXGv>-QT86BR@+X~ zV>Rdqkg*a#o?UOuH5cxaxp3gj08^N1&`>XFp~9QF6){O-YA%l&vAE+KS?fmZqpx$> zq@+{y=#hmx`rRJ;&VL=Y54%U)b66CvttI8dPzF1KmKr9Iv`5JUv&Twv80tgw39J9I z{0N!JhS8(nGB45P-QLfLxDD#4USgO&l0G$uY?lj3U?074E)F{!JGP9sqYE%hya{C1 zb4shSTh@%1;qnF1@-Q5_n}eak02q`eY!-$%h-)Qwnl1q(g8;f8SG&_C@w)i+zK~** z_>IQ^ah#USZBbYaf)AUs!m{ube8b{ay`K;OvK>h#mf2<|BpB?xdo9A~)s|iE8^n2| z5coJ3DBD>jtcx>!Sy&p_JsMDk<%>ScV=HgtC$qE07Yut@VVx@p&hSf*znprZEqVLw zt1-xJf(*u$w5?_Y+8gD$^BWOL(+*#dl9bz2Eefmr(P zchN2;tKw#v$};Fs)B&mhJ+)fgaQQ`jveu3b?gjZKj7{R$$mBC<-~{(7+47oMbpA`V zklUcyv@|eQ%RkW`9;>Y=a66I8z_#!X@D+jUv8Z&g5Q;#Cs5WZE5OoDvKR|a}sgnQi zs$|;)5mTV6592O4-XufA)4Nm^g*VuJcaQQ_-1-0)(1IpkPscX}0vnN|7gVAYvoWM6 z0DlZ8Phf=M(`MfZi=Q#!5Og`>7k2qCWiR?Trp5q$bd8digIRct3HQM?LI;9D*tl15 z#pAmN-^Fj&2XpdY-!|UKl?>2EeZL?b4!EY+;VI@b|kBYWwzjTHzmCAE}WPXO^(S39buQ$=I+%l*N#|{xQR-A9|y&m)zpcqGS4INyT`Ih5&dny#H!rJfe=jFRrdE zDb8Jz(wv#UZZ7q2uEduBb*aGs4 z$;>f6V_kQ})?vpV<5Qf(8RXp?3MV&ERX25>-#IA{1<(ECcgQ`2;u51JUd|g!Fw1@Dme@*tjB?EbD`62~*|6pbo6BZr_K- z)Ai^Yx`GDXNcTF7UKl31u^_Zw32cqYdg1AZ71XDyHyFo$&wKUdLNb7)E+8{^fBw*r z73g@lTI%J(mmE70uLl6X9cdSh?j|g0GmQWwzoCS`*NLrPhAD%mdx7?6%A0x}U||#U z^EheZz=mCLKd>`e&_7Icw0#ad?Lk<-PXp*<*|!9Bf`jWo=%_lV(>@mwKN+5a9PWEN zuD|sXVy348$CfgsI{4Bpe;LE3$6eMzYlEfSf(FarTQ0Do&GQKHP3NaX#{+9B0%jWW z6A}*bcV^rMj)nXd^G`}3oUP;h50MSDEXsma#Pk}gH2XSb^39XSE+{7EZuq%Vr&sZY zo$!%#jDRXjqkl+KF7`qf>=SySytk+CKPbc|vnkFu~+K+cg3sFTjeJ_H=UH04eet@Z>``C)~ zHi}%G#zTCXwRxk=z0CG7Ui8HPSr({Jjl31H7U{l+QXV^#;b(X7aOS-?RMJ`b1^fVi zy@ppPOxPZ=;oR-D+t7!HFZisvICE!&?qi)Ob^9S7;Oo(9E11uOey@5j4VR#imOj~v zuAo839Q5sD=f>k9tZq7ZLNZf^fY6CZLA+sdf(hgEC_4LxBj(bIG-%WbKgbzsm*d!zH(3%7k%yu)v$s`X6@dRUKgsjMIgxuM2b|kunm0hDvyD_ z@R`>scf;GY>h9YwYx#IBa8fNlONr6la{08ce0q^!XCgcymzj?C!qlAh0MAo^=|Q!7 zmZNA}*pXH~99HXC0@rw0+3&u5XafDxkT7&Vbm`J0 z6BFal^_L5XIV%J+{&WVnNMJv48lJ0x-^Q&UD6?ZMg7T&KS{dZ%=?nw!etpq{hnr<% zuM3Oz4K4uXIN}#*f%?KW|M!jtBlxW@<=sCl@5b#8FjILW$relAj{Zg}*p-5JtgWuv z+V(Z`G>=*x>ivOJF1qMK68bCQQyZ>!pZvnw$j}@DUJ>hnw%u0RV5q}5&HhRw@U4*F z&0bO}EPrbgg;;;4*gR*wR?PEAix2eTaO7VKFuwzD7B>dS`i(s9-BmgjD?F;^ge?qc& zF&mAop@zi^Zm~aPN>YwkHMdl zL^XA(jJm1M*4qVSU*e1W&nt0Qk%O0$`JiDWs2cux(ta2(Wv~7*yQR#^;26`h`uOW~ z4u-}IffuA}3p@pui4VqIlgPme!-bzH+9OI>O5DX~y1ed=E~W9)_}025ck5iOZPEun zk^^o{`(&DENqJHMdnk~7=;GM*&bMzqH2#5j=19sv+<8}VWJupbZ9L2PGM~SLz7|x( z3jLKNsoEodiz?Z`#kqU(EohkDI9J5uPE~xZ0Uf+uMFapItuDaw#|S!!!sMyfzu&&I ztovBLn=Qp|Msv_H#|Qfz_W0wo^&>KSDnCXA94sz;+Nl;H+M{X`Ab30DpTeObkh_sN z?@hapoelTKHW>9`YQe4yIHf@ft1s76N=<9{=B&rSkoZ94xre=<-L~H*- zo7RWd4E6NgD{jzzua-PGC zDWcj+6)wxt@nQ4Xf@}qs<6@WXw|xIEl#iWAbvBW(bAl=xB=USEi!kbz9zfOLf92jj zZRjs;y2^8SmFINsgmFhxx*lva0Q73SMbGE2Gum43D)YMAgR;NGY_5bC+EeLnfl<~k zch!5vep+>?Bw~(cLthmORq=K*d(m=+BWPFM*lN9hbe7|X*(AQQ%16bzhZ6MCe4PQ8 z%$W5Cv4AUxd**5+Q{9YfsA|K90~td#5zJn-xxu@ino2<$A7mBrua3Qnc~(6Wvijat`$|kq$b+7#$>C72!%t8NkJ*aIxg-f{(C*eOz2AUQ_=l~BSZbguSyC_;- zTZ;FC@{_PfdheeQ9f#6|<%bo}N}%fH^|+9ad#skYWn;NDuvP9=jm#D}_o{0jU@IFv z@x8l|NLf}(_z4-d(yN_R{Na%4AS>sj>Q_}s9`JXsEf&9;yhmRo4)poeT)>PZqSYzb z`Zl9Fv?w*fAy#B~fM>CtZphr7P_$620eJb}D7 zsBgxV*^PLMZXtZUi`$|4OymZE{k`m50OR5ET*!uRh*xKWU-_p|Xg`+5feDd1X(UER znqYOPTkq|2>DfPDB06Is1pv6{W6gHX8FXx;tAA$0mS(XhN>rp>p;$&@Oo;ES+b}2H zF2h?yH|lE#%qRLD9$Vqoj1Q?g3j*X*o_v0z()5;U-+piRt5MntosEz?2VjJB^y98s z-$DNHDsgrzQozM|e*v{Ue84In3u(Bu)XbS&O~d;VtN5!4yo(izZ`FIRjBbDSVf7Yh zx7{_JGRvduKIPhHKtqPoP=$onId@Nw*7l=ec5-UX>;a(GgwAE?hx0m=<#+K#+q{yU zU%IS@1WHMvTs7 ziQF~Yd2%ZLRA6*;bUXtHkvlpM4QiOLbJf5w1V>Ym)*e)$ysIZT;(i(a12yj|L{!oRECJ?+$vV(vjDw>A-( z9#*BMI<(&DtlZ}fkH>z^$QGN+m+Ul&S?DjwPi?_9aE?C9XD>Lbb zB`|5Kic{hhvi7qH=xn>t5AKwUkm~fpFN446hyUHKG*%^zlA}!38!F7O4}LJ1yK?R@ zGeSQ9Z8Spsq2?SJUybBq%DqmfOupV1_@Sm(rQUb{oPo~qd!XvUxw+k)Ui_ahHyg-N zF6MJzBFmSsgpY^cUR)Qg0Fmq#_U!;zNt$YbG1q}n*C4bc)w6TZ(HG^lH>=uK2&`G& z^^riLZt#-O3@C8KgV0x#4rK>?!;lUJGBoJ`b=N8mWsD=zfvThkx(~Sxbtsv>waqTQ zUhtLVBldS+WDTZotwtQ+Y51&+Qa>*>+lRI4UJd!mDus_HqB%jxjJKfg0dZjHXTmSU z4KINXP|h5fZ^HavqS<1_0QR#jcnNawdyfU$fj zfLps0oTa2^TZFcqoD^uF_o8FyAfyoVSD14 zv8<{JPp&%terzpFuxm$!?4+zMHn9ZGa*WfVdM)UZ;oSP{_Nyadp1ecb9#v*r25RZmqaxkzf5OYFm1r#)3_d zJ~ZfIchdp$0}*PX+$p*vM=!~&CpLvlm~l_SfCN!oHs-eiQBo;(Q-Nrf^hziK^;O-kNu&4!V=6HX51=>NXu#fB1gd<@7NvnIB+c zo}wvm7ROCykR0;_=@FJ$1OD^{l>JE(r5&~ni2ukyfnow62VetXf)qB6ESukTFrY2# zZ55YEJR_sZh*b$6hmN!}b~ZAnIVQ60bX^_33D@ayU3im%u_FmRs%8j;p@q^J`#}M)lrGJ#5DqvS zv58K8TapO05brwYXSImOmMVvQn^lMNdo~rM+jU#_Jvo}m<>mN?llusCpqxhPzPDOK zVN{0^H7dJA`TLsW@39pE zwfX#Mfims|nfJ#7e0>qw1Ji`U)wCnL$E_OohHcv$pS9rD{t{oe%bCSjl zDW=yV9^>)3=&JxK0-!11sX=kHZldnxK~R|THbP@AvGgdtr8l^YL~zvAak&IG?Q{m? zb(#aH#~zY0WB@B`=BL70e&QqWTljU^8PF;%hQ$7FYX%U16}>O}E+w5C1*;SY;RV8k zs6xv(NDldJXFP39t~b*BDEdDkuQcInO?Z9q_=#+>DNy}b;RhmPy3n)4KvshrWh^0p$BRu2kq zwK|~M90_nPRoN6QGh_q7^3w%23`T`a*%vCz5HHHsUoRS&%6Jm=K7;^Bv`>-oV=BWwNi5Q9QMsknSn<;TuDHV6|1CWci zx_QHZpu-HseFXokO4U1lz@Xz^di=@zAHQb50IpGg6x&;Vp3XtR))GI~O7?dRowsl< z*&iz=MB|?)Fl6aYBV0kb2MRs~6+!|%2DZh3~+XuYsw;PXl3pEh#)j<_>xI z4ZK%q+H;BkiqGRoGo&B<6V^e$dcH_z*0l=*it*0j*+@&Z=EuhwBE5)K+(+!fPzDM` zjm=Cpbm{l}p7!zLoi_m_d7)JrKG$X$FdFO`qs=XJ*x14(=H zG@U8g?t^WzGqiWvI zy_UMZ8TtnpCH=LH0 z0bD}WQC1dae6$K+_=t0uX?~<5u^#!41fTUE5`3_iZW9Fwe)T`vW)rOEHWPdmptt|% zAAQ6glHt!-VxW^)()2I>4FWTgaEGme(1Nb4`TbI!>()+3ZB_(9lo)OH4Lj#Qw#Vd#1FYO@I>RCR>bt*DK z6T!Gf&t~w~+FHW78)aoH!(J)|eqo)$XR&uPB|EAFrrj*ewQvs7#|?`oWg>iXk->1j z0^HLL$&=#FWsQYew%iAFP;FqaCxkqej8RtLMCf zeLgL7U+`%^#}-PZq|ypwN!N_{yqC6jc|Q9I@v1no)P8GO(wOV}im9TyS;6;(9;Y+U zen{VX(NUyx<8K|w`1iBYVS8(+XR6hW58hsqG>{BH)jABZI?03g6=|TlPhiF z6)g>)dS6kWH8Bl09hf zd*Z1%A*N5Sh3&bVo^0!16?n_(NR+&NM>}V0@xU$cjc_z*8?xVp{iZNP3`kMzG3Zw~+U?=(3f zi;Z=KYpPG4)W~3OMQiQ7aYNT`XB6U^$xwv+i|#6A?>m>umXy>CJkj(Qk_bR21E-Gt zesxHGrn-#-`ACnYQ?;4TLh%VpNrBhLU{+Y92|z~hvALM8^tDu@QD-@e?xgJsjI@dv zjs{V;1)kHglspeC54j&Ft*STmFsi9>GLUfkp-5+R+^#3 zr<#UV@I(9oNP)NXN(%83mDjw!?j}3tVOiOs>3I?|ARY)MV<{o?}DiQnv-_`yIzNDwA2yPj;*`tuftUsTuc4q~V z_81&~IApQpI}_4ZW*uEuL5CW{S7;!IBX*v~H@Q9mjnM1y!IarD z*We2HzKM{b=Aw&Sa+C0RA^^+tRZ>appi@BS8BoN&an1DDx1mABzSe~aPFzwhD>KG_ zLa2bt{P$~)4bS*f_*OtcB}IUE=?I8*P&l?MV50u*Isk4k-g$2_+OImS@2j4Wjfo&6 z`LI;XIu`tH`CopwKHrdFh=%I%NnIqfvLTOM`Nhq zkjXXv1oAbMGKiFdPhSaMa^0LR7v;^NYOkyR`8{~>6kNd44w3N47MH+qhirkEv;CT@}62WRN)jNxdSf(2GW&^ahI5O}JC^Os+O zPkEMP9H^lK!C0^9n6ZGx$u~oB{1T*pfXcMlA1K8+3mdf`+C# zaLSmM3Q_E8@B>_9@F29rw67VK?EOQPVZTLNscZT03=`ZFQ3q{0SD;6un6q$tXYl@C+%4z0FG zfBKI6Y~*A7!H@cZ)vJucHYNuv2c}3rQ!DR~>izIc!i~UPAb|jnn;{hMvgpff0S;z_ zKC$U>;A<_w4setK9H_5MUjr$|@457iLDG8D0czH zYo?&otR?hG&)ROKnbcB*&eqX(_duP^8|F%cb?S-H1}> zZqaZo@7fZ4F@AdUp=n~iWs0yU7&#GSJ72Ao>yaLOepD6XtcTP(o4u_3 z|N5CO!{HT|HGJzYPXb^0HLt&&TRZk&m%yyl{fO;9Aw^h_0hD_JB$plY_oFca zE85zLItFsa`Z1%egEJfL!FLLaJf*$2-T@jI$^7=9G@)&fffDXyLdky&%@toMP}+^j zZjo|FUO<0^e|qn2YV@q)LdJ5P2(rQ}Ve+v5a~i%C+85V=*@G7AugXpL_VM(3-2zb5 z(FIfaHTd*6+Aw|TJ%sXd|1KEVbw=$uS4clPkgwsC0TP(PtH9#G6avHg%M}EjU=q)4 z1~xQIUj|nC2EGO^e(j5Ye}QwQze=8!#m~Hps8#-T95`3Esyxs*_B0xBwnOY@n`k_y<|N2GzZdXtFhE)X zMEPcgW{^st;G_;8|L*aRSDj{$F26_J`;*^)J@G#Pi2n*SehDe8LmAVvQ<*B?>G+IeC|7iD?8PY+}qb5Mk_ozy9CemKTXLV zBL%|_J9IQVJSbYbfa+O3wu?VQ{+p+>RF}o4sQx9vcsbDnFU8jpqjB@E-BKJM&=bgQ z?KHFZxszr2r{n-M!*Yx0meYcTOUj?y`|(#OKa!Iq>4A1I1B$)uVWvY?7!+j>`nCJ!QKgu%Lo0!h92 znw(%((v3e*7=F=Rnggi;S}OE(s%8gwt?Yv>Un`U2Q7gFB1yA(p38b`-axEyn!#H^7 z%^JY@%3TbEznns%5M9V!Fo?GSIsN5*hgj}Q*vi9$7z@aHBU_jsSllzkNqZHG-rnXf zxt%e$enKMRKT{j$iB$Y(QK%Ab^vn>Ss>?g#OzdIZKE9$ez@c;?K29(!rvh^;hxU5Hkxb13J8 zUF&lwYhrr<>?Q@efX^UVHD=O-4Jx~oik%(uq<6gDn5+t;EQWgE1^aUw68!i&_uz&~ zPURVlid5scnRM3;!$3J(nESz%sP9YHN?0*u&A`A>1TQ zXuX5673?&^2oQqvG!z@ZuOm7gD(7h25z4IhKLbLVE%X<|+vsQgwz_Oxqf{KOY~CLr z4_KCueVJ+)e$bxc`@?mSvM||;_uQlWI*dkNzB2TC=Ve#Q{wBrK1(QRa>8?=odZ&o% zkG7q7nYt@+$BfnD{5!_ke&!a+n=s3xoIqIdZi(A{5g$&4(JLL^t&Uy0hb|||R z5*PQu@(gcKWVPxG??A)S#uz`|*E5Cn=m)3+^fXcdvN6~FBK2ZUzP61*z7B_fZj78H zB6G%?gBlye(2~VEquR;OQm>nwKCLNL5Zj#ZnNNd0*R)KhBQD1-n^c7KA0~P&it-Y_ z5_W(>s50FWC*)ZPH7tEL(~o+4ybhZX;0+JI4}hTZe!0qI!|%;i_Fk698^ural{-Mc zRxGl2HZo2*p0wug(!6n~X8Wq}bi^PkjzcBBmU^wq@LlvotDD|P{{AhyUp&~Zd$ti4Q*I7Zcr`Gybm=&E z!_@vU=#i0oL zpwCwe?>~*gU19-W{}^L0lC%$$c~3j}N$4K0<}kyzBLmCY~c}*Ym-kzZ=rzH^vx5dVgY!L1ZiqeFn<}g!_$X_8xy} z_M=$bCc_>}*IB`CY`6GLg6w`9a2%jEMLOZrVh+D(gogoQ8>t7X&o-HxguUELhdGu1 zFjnL0m^fL7}aS0>wRn34`ItuuaDa#d6GOkOX;PrcLMI9GGz| z9l@?h1)6LmptB6>FE(@>GVt?;(C|C=I^pI@_Dhb8A^Fyy5PPF_Sf>_WrmovvwPT2!UwltxU9ch4iJUF&hW(U zUpIpXF84NceUB%6gW)=b)c>~Kjw!97%i>goFMa{>D3lU516|=Q_{}BF)PdMyKA%X# zd^_H?iLN&J3EA-#ZMgB5&hf5ln+!Vb1zS8?8~v4=$cPG z$28pgh?x~!yRonC)@av!nl{sbI}*s~xzoUw_4rBs+tw-}is5LR|Kt&$v3u{sYfl4( zG*`xM@5UH*n1NH zX*5;v-=}uaO?v!qy<-P%NZa3MH}$WdD40&>{riyMWU+r)nf&Dt2zb7KdpI$0ms}B} z{CvvQfxdH`7{`n1x}sOtDzoQi*VSpDQ1QYJ)HCLfK-ocBP#xyUM&^Ms7x>hRyrfds zrQdD&vC5U>$*cEfxFu)1`xYD?QN}-$LV=Gpt;U^P;FDL7=e~_jFR* zZ_>wI@BI$Wo|1v~KzKp>(}F#ty%pxfz3S}g;5=fXNB)ts^4ACYtS2V6|B*9Dn9 zCHj^A9{_#pT#+8=F(f5qnzX|6=^qm;pNjdW z)c$LNa|JnKzy#-kMXps2|2@IKKELpLHG_{s#n41?!x(H>fzc-mZLUR-Q<*)&Jo82L zumyliwYvl!Byik-(tZTpi&;8t4=C-*o0RsdzyG(Ec=s<#yVVp{)A`m2KYv^Htnx&E zotEv{?RwCj01b`x1lpWwH2KG?9L^(E*!@2t74jsM+}J+l2H$Jy8#diu$C^?eU2OA) zE_8s3!B2<*_~mKv%LlZi0x9rXjcX+Sl}Ue%zJ#0Obyc`aiv+R&c;mE$6L89LO!=5! zaM?wm&wU?rbVUOK&g`EU=>jk9jAv~iDevH9q0P68{rPsY5D1vSCy32=*!+42Se!SY z>_IhHQAk}UNb>G&zr!cPF z5vwM>j+o433SOm66DYB%V8(HQY8=~`b{-!el|$k;NHkGuM)nvcfGyR%>cH;sa)bCl zzn90mbzfOC0y+ABGm6;Xqp(jqA^&?=zh9`}qJ5$KcAAeN zkO=0i2m>UkAejsix~oA60HbM^`Ii^bCf;scRr>+fVaVolG?g5ceC-j!7F~JU4G=;BR@Vg*xHdb zVg^o#EN4zW7`kyOUt2uZ_D(ON{wGAZN*>I(RD~5vY@{L5?zQjDd5gFM1bJqAIf-mjm(C&`+#D99wgV1-~KD#>ff*RT7~pAIkdLB zfgqbid)&zuo-x{boTt*-QM=}> zz=;Ji0Kta!089?`n^X4l1eEYH?>dU&6iDZzWHgS!>kUXkN=YBQUHWa!Zw@Sp3FVhV zjhz;qEWJJE%tyi$Od3+OB)K7$2B&hIJ4H=Q1aEE=%@(@o@7ORzYxd$UE)R+4JKsO! zE=X;H_uaJLQvVAUd+n-~j!SuZq%o$zO>1vAP(XDP&^@|y&!er!+AVA~}Xi%sK7~Fq>Ybl&WNu^N3ZS>=dmN7^j$C#q><_YGDQF$#R%~9db$WPLqi2e#bRjB}*rgElGWIqcQmKmBX#RrrqxZDZ14y$F>nHAPnD- z&lF^cBIwyTXL#{@ZCd0z8Q-z^p}(CdZuzeYd(n9gj+OJ_`_jG!D!tbeOsdtLTw@AK z*G~b537X80*tfqz4?gNJaw%0?gMV(@4h1WNXJt-pK=NVFIxH}ZI4M^@jY4Lz`-tLc z7OHWP7X`I;Opiq9l9B#M%;&34loJ-+t`_IATI^mee0&hR1^YDNhI#s;p;B<2hSXvN zve@p;0xbc~kNjA?c1{I1{e1)bfOfJdH0^cN$tY>@2LB!PXhU?9g>twvXd?9aZl{f9 z+hw`|t+ocsor)(TjhH^vwJ;QrX{%Xq-MU6qEX!@)S8}=y*&A}6q1ys4!c^mSvq9)2 z95)&q*pX7;b0IECtNMlTR-hfX!cWttmu4^@(%o;3K6xgaOwDmEu_+OSe<^|XOOHN$ zMAasXcBB-FKh4%Sn&2FKwC+wJx4vvQE)_Dqh)KC-bkL0GL;Jrvsks37r|lC^n{?!dQ!pj@Bm z0>5YT{cH50rR$fXEG8bPkL=>_QrkE}IS$`r-K+m@E?frgpws8r_>9hp{gS9=zY8NA zoMU33xBUpD;QzWR!TW_0a+PlL<=^dF-gc`-E!}i6WjXh*btb5g2(aF=VV2WL$6TMH zO~1ZPIv!$q!ofzPdTYIe#JED01@D&D(oAl7zkR}?sg-LIIE{>C6C zI)OeQBr)%l6n{jWM$-FlSrI3zN_;LI7Ul2~c%&6yx~g1@A2>tisvQ#EcgCRXQ{nS# z+s*rQ&xLFhliTa~)JKh;=B`#AH;wAK6=QQ+X#E6`@r>*tOtD?R5Defp*eC8NF}hJY z{eh3zaNkL0T~dtUpl<#q@M+sW1=>~#8=C@cs^|vHk_tU=7W2;&P!Q>6gOkGbR2ul+ zNNgSSDp2+FcheE<`PvmxlFX52I$P~;DE9_OLVhK{0D=zx94W?>A8R?R$>;2*_Q+^B z=D~KK#ufYT0~BtPDd0qoIswHvf|gH})P%9v!jyHXgCEN* zuc*XR)cb8xO*c< zkys@~Rp|B>H|IMK9@)kpcu_j*G#~Gz?7KY?TZ`+*&rwbz(y>SSAkf|1kmP@PSg zXDxGyH;^ugm@xu;Cbl8TU<1@my@^brc}#r>a)S-B^NvvK7J$216lEnA;Fjksbj|fc zEL8pBK+@)>P%BD*vj$-XU)gLV>68gX*R^Yv_LA6oYtKN6cJsFw zxQ;KP9xMfST;Q-YfS3jv|89x1r!zn}zVqnnO;|=E@(rnwSg#yzy^p$3PY7Jdv#!(A zI$XzV%r#y7%L1`#n-3R#67zY5m4V1joMO=&NR+Cd5Qm_jkhnALjQMX|^Vs-JW39T( zs!Y3@;jPTe&oq=?WPe9#5em2#lr(yWada{KNqQR!;SDfU({%1%wVF?vp-= z6^)F*e8erh!=t#U74Z*KywrvR)y4zwVIzgDqThgQSA3O0iol7Xt|reGp=I*RBkBfD z%U(P+gG|zhw5=*pTnoeF^2W5Fl}L%I6W*9nFz@A~dLw7yA}K}p?3i!tG1*qpYn(r9yW2` z#v-+(+BZd2t`+9O8CMNT3Wkc?&cBAOK8y;0SyJHh+9`B{(R5O{t#_W1O>~Zi*nyt45YbzeE9-<=|`b~kJ3Ha5ZM9gBOKYw7+MtTDbtU7kYUvgC(D$V z6(okHN9b|*YjpaVr{(8m-k#EhZ`9u z0|fOHLy&0({RmjPJ2iKX@=5kr>7ylpK1wQtGhZwUV2Gu8Tr{!Y+);jT zK(WakeORw(W5cM~3AHljY|W|=F-8~ofULqFqk?<|7;yEASPicFGYLo@i$U0ncQJP# z!0v7M%Qs`l{^%}kwpAWs5!BQ_R{e5Rn&a#ZwkLg<03|p?(9|(&9qGVxJ!YlHv8`O; zi>W|~irstV2sJkJ=~YH=IXK{upKagS24zZ%BY>w|fMRGmXmO?yoj}dD_^v2JbXGF+ zusKrt)t73G&0v4S6&P0GoCQycJQWH*e+&DEG1q*1BJ^J#Izpat5#15Uwo(Q^b_wpF z+^>k4_`Js60IpnOG84QJ59|RjKrcf3yy}nZD96t2Jn(XfZ&QE|r4f@_s+b!r) zm32UuVNe;%!}z8HTGHHk%ie~r#COZw5Z3D7 z^WSA`fYM#MYlaG3CER_r-uLXUfL<+oQhC6V7WIj)KH`%zKe=3(-7&7a)oyBA$@WV8 zXk(r888S9-(KGR)&Er$4&N+=$0Gz@PI^3iJ?1z6`-A2Kz<_Vi4yK^E=ev*0BK67zH zM8Z>3eoVdE{}PG3lO8#0+&LQ`{HprWv6iTZY%9df8dCtzHmn8gg?af#_(&Gb!sR&w z-aFIpcmCj`lg{D6>Aq7;fxHb8TdeW(7uzsB#h1EE6Hn5UErZtqgAT(@6-efdj05~5gca)&Q^J1 z2&vO?%tsK?9!3yVYY%5DNO4il=oOs{DDA#2_6O&(GBMYG8|BQ%!$?YWEfr|$ClJ>s z;v{1=qu0BU9PI5gn4KuNcq4aF%CTkHSNKC%8MfyfAb3)d3+DjR^8lrtP2gt-e5d82 zOc} z0UQltCCEgmA%dQP42(1gAd7Yfgw(RMKp^XNY5_Ed^8bzv=sLn;iJ}05uNaNeOeVMLf))uRjnIC-N7C0c=#={ZH8F{r>_sdOz^i z%yXBWS8k>3d_2gDu-#!3^{lajO-$EA*TuD=DERl3rkl02aFRDYUr*}bSX65c=<8~= zjt|cOalYq`M_*mzcs{v^d{185US!s@M01I#P+*dVwrH%()Xl$exeY1ePrjff@j=1p z+%uV8TDHRmhr)9X&I@Sb3H40}#1@F@$+yqlb3B|cbdIAp=G68u^Wa0g-v93+*57<- z;kkjCoZ&zan)JYd#xY@wBUG7J(mpB(==jR*$J=AI5nzP)umO4#>9V_~>A8z<3f~Uo zEqnoU|60*&bWrwKO&B_V(c=bRx-4$r{N6gI5iu45q*u>y>yP#FM09xM*WvWMZ=f__>z2DG~v+SAz z&Hh8#<~J0x2zRe~QGs>Ix*MwzPQp}WhOoLaA3ogoTGI&R=Fju#9QSmKoKwR8?(mz?;(4?=-X@Y(VARWhG~!B zABY#M#;=?@J3A$7U3c2lZFo2G0KsTDRoZrdUYp(Zkw7sgio4-9z}B=Pz^Xm1^{=;(l#>PxmjE3N)vM469J8-N8$)DoB5~T`5*nORvfac z{Sik~-5~!O6HB^YUj6mJr^|iZvyBBFd&s2)ZvH8@+s@~u@P+KImX+t^F{CJkB{k05 zxV*9ZIJT!HX>EMmDL_n_Wt!{IU3qo;g40Pi*GR;-ZLmGrE%1g`fZ{9Tr{6c<9RvL~ z2V#ZSMG7N6AS}m|Hu}s1n-Q_dZ|Eu_ezv4Ac;v*#4LEO-&@SG!dc7&ZTso0j!T&(F z{swdSuU zaa&giqw<_nk@^#0_`^k4X^A#(>j7UEp_$3a^{*gG$T((!Ka>RvH@5&@ZN}Cj5hmw3 zfY;)ZV{8pTf~pkAgLeZ6$#{AaGMeNL@r={Z$olg0eC{_sC9xI*UVb308MkD}Q9k3- zJ~VckKRk{+PDXp6m*t$8z%fa-&SEofKGY*aD|7f|Fg1Xouu6a1tTe!aQDj2^Cihxw z%>uu2eH52Ae{7IgDka_Er za&Z18Zl2x&fIL!Lh{5*LHv@K!h;$Ij_JO3gep%Gdq)=3mMe9i(K)NS9&oTtzdDkL| zb@w<8g5@AaLUt4@$Sof1z5CdWRJoejFohSehx|w}{gg7jLbswQx>>rSRDre^hBC1# zfC+Ux{cxh)!OX%HPV&X@uhe$9CXcl;;n%>SywO^WHk^<1>MOSjN5>4DG&rm zN%4qf1J-(XkgkTR2(-PfC^nIFDh3on%N0TP77v34H~yom4Gnqe9B#Ym6)O&@+a8WK z?!wSNCv}37#tm?c$lioTC3u*WU1&0AGc+#d3DAhV$^?A`mtXaVI2-ugN`UH@j@bKf1|Q?|FakS?)6;S;pUnFNOQ1Z@{O#s&8g zGv`sp3%m_>ac&wo2?$~Q(99(>Bn&16UNGBl?DwQ2$S^CC7~~|K?4nrmNqm=x+b*%S z7J>XIQHBtcgc=g54l*n6ZFp*TxnSPkJUZC^r5eo=bC_oJB+X3DW#=6}N8x1x-5OWU zQfOnz5N<*IsdL0uGj+ogcW*JghSjR;sgAVt4lhpfjbxh|^<|9n{0pA8>`&08imB_N z%y)@xHRya~ggbW6r>-mgGG-%*e$hLq7?8=|DC3OfN!k&7Tc>u@<;9QY7zC~sr0`|4 zQeiSSkjj1Oedh~qlhn_*-j7MryT%twc6st$sZoC}e_FaC%Y{q8A@`arn0L&p755)j z+Z4)}z(W~{@JnEoHh@XHO^j$jNO1)^j##-675)u$6>#AF$x<>WAJ<=X)6x+u)U z*c$)KBzd;zilQhX&Oa>{(2E<+=mkD-YJcGJ0yyC+z`HYc)9Vge#JNI3^rULk2p8(B z@FGtbmNUtSd~a_-oQF~2T|z(pd*pH-4ZJ(5Ru4drbJ#s^8LK^Sm|s0_;4XQWDhC#L zK}v$;$eySi=1U$};Q}R!ft+7E60|29t&o zLSLNS$l!t%$m4sm95tR#Zk-pB$bIJ&zcM=reSnaREtHM|LaJ>QUYyHm?t>Pe^;29w zYR=4yxWd8%`y|9MIj{zFH-l>QXLhA-o(<49T^Lvy1wdD+RWAokx{U8f8}Gk0vfVl?SS3x9C8IggWKNlSruQc2(d zy!pJ8`kmza%H`&ufr=z_XpzwEHb|;T$i(ydh15C}nXU5>kWjm}DQ#VK5D+7m0IV>C zyhq?W->Ri`Yw6rWjWH=^<~wF2OL7Xefwg`-eoLWvZIJsqgHt>1;wv60`(EwnRoCu1 ze&6QuR-^lWoZ`Tj?d}({1f6XEy*Q;`Df@YDp?_MG<2`O$;7C(EyIUs}&^OctO}5vH zZvnpbMiYOKHoI>}tn%E9;()iRrdiEpe?JxVCLlzfgCJ3+=7th30Ty+gMu=FVI<$Lo za{FOZ|8nV$nE?*g+6fZx!hyQ5KiWqn#-7COv02>F4tROjObl%BIxrfe(~@~2IW6&U ztRmiyc6{~hRv04ohO$hLk_k*4iph~VV+Uu_Kq4pl0qg{dP7$Dl?24ct`W2Eaa^Y8r zYcj?G=v3lo3mf#Sg$-BIHKM@=otm?960+EI0fLGh*88-Pr70lK*&?tf)Z{G$|=6JH*J`sE;U`rAwF z{x-eEIVSPUJBhJ)vxHHaTxwusa1uvrluP@6zj106#G2VDj> zt3~lID!TU8CxnG25GqJ73I(pG$s4fKt*)bc+0MslcC|Y zY9zWjuBpg(MvSt^*q0HzN$Za6>By%c>qdeU=G|E9-KYju6jF6PDWdI6-PLtYm%h~U zNIxNV6S6$b-Ic~vrLysfq>H2;v@!GPvVMKws^qi24&1v^qOJ@&1KwFu~(oK{F9n;Ws{>oL%W1xTf#N{=92~0BJ;OLsD z_U?qE8Vm*jeZ(6L9R=pgb{Djm*1-UhLQ|m7ANX`)t}5%YB5CU355zW%7_LK+nMw_; zRFA^W@H0$xXFd{h!5Om5(+73!WE~0K^B=75f3)WR*RNSvwAoxVJv0=obDo()x@@9C z^JwPvb@D7gpHLny8F!V{#Nm#{K0LvfvvwrN)gk_EO2#~X zIt5tMBkhdCLz#f?hO)y~L|}QJzgx}p$`Hvs@7ZxFyBdjfNi7Tca|Z8-V`jB>xM}!Ie6Zl7EgLESVzrx% z@Q-e`Zv)*^R&VpEa<`5x?W^j$&nf9EyojvYZV=*K;!OvB{cgrP3bGs@>2QGB`Cj8D z<3!O3j>nJW?Mbb{>~X;4?QQ6>6%>8i0=3yC*lFes0p3Jx@`NuEdqr3ga^ZviPpbTfG66jY&?1~o09mpX8Ppk+si)l6DI8vvgY3=9A? zBgMb}sPq)w!)=Q-2FY9LEp+e32TxjN&nk22)<2m`=k13hK49)T2)B@n!89w!_RFUq z<>4F-e9_KaNEwtv@i2C)5Eev#AYu@{3x8%nguyUZfI*ZpX7(<8nn(63+Lj4VCYy?; zaU>!4G9$e+B_NJTW5qA#q~3w>%g|Br@Q#z^tIQ0Y?nObVdL3 z62V;m`yHO?sxsT;LZXCC!lgF}Z|j0lpvJ)u7JCnSv2}pj;7BVSF+;?jJHs=Ch}myN z)X)2M-{g4D72TBtbv#oLnqj7Vte|yT$8ygYNJ!zB;r7Ip6EQRkIE5{SkEGdT%mZ{z z(+AR>L{*AxmNywAoc6?V%ggJ0QKIutwpj7?Yd$au9AND4n&APeISs7}8Ssw|P@;hr zFN-i2*g{SC>)QxuN0=%1GyE8xl3tF!e#3K}?4X2mR83^eXTa=jK=zm3&~4?EACoKuD`l6sM> z2oU10E=@_{FuELhM~AmdOT>3*Kv?$WOHfWq+I+Ld6!(Z@S-xmUdw=o@`+Iws`lLn7|cpWsG3@rBF9}Qre-Bpd1W1IFPVCs9Ggd|iE_?xAlAS`SG zVgN8!gEYtOD}sO_N_d$H3>=Yu1Zt+Em~>#@fRSKd)2P#!rCDIZbfpvMXI(qv5>;BZ z>}u7YcN~X$g%^pd4T9k9y=X9C{hRMy+(yPpigJ~^xTlC;jJF?O6l+>`U`T3e@n{8l zZubOcaR$W-k>|YhC!lAow!)}qUq%R4yY-G2-75(CD!kBv1)(9=hWvM>u$c?ji^S7a zan9+ih%2MP+D?NGq?ZPiB~z=CFww1|d$bjr|1@hz`n2_EMCCvaakwCh{8332&^8-* zI)8cYf0pMPNP_@_%(fLHzih=X1I)wx%>bkSGQhxA0Kxxdfd9Tk;BJES+3G2WTIvRx z#9l!VV3bwk0wJ~y1h&H9m#z56CCAFfURsPCzrV+TmC$XXi#et64aaoFs^WqkpcRzN zZ|3*!%iql}xW8Y=^I>p2M>0VDINX*AetsN_XECA0^nbnPT#)k$0P43g4lv3=J%k}6+v(ms;)+bUPIKrQ-py~5J5S?J3Vqhb$azF~oHmHyMqEC1( z2i=4|gyDjqN(ELk<~LLP^Rfn-i30~-F#7OMRbZj$<3M?To^TYfh(|~|Br-U^ot0Ol z!Cw3Gh(rH&iC}X5I^tlkp@0Y6+WRbPX-0<9Hodf7U0FiY6uL3>0jC7Z44YMG?|fNI z?I`US4%wF9d)R0Cko9^>f+2isKte}q%0Z(js&{gD*9Lr%Pd)-yX9GY4>_J2ENo_w6 z!=I2#TxPoK;~5d)6a+xcL8D(2i!nsbQryv>h)!UJ*|UwsyL^x^zU6U8_wrn%e0FrS z<)SZZJ%~7EiAhjb|19fK9pfmVEBxl&Lp%&yox)a*6~L1g|=K!}3SY4<;Tw%$nk~Qi(^{ z$!9y&;?S*SsPWv%L#dw*3%NzTTU6x;td`#02KYWrp!6?0OEzb?e-0SV$DSWXO8XIM z&#Bj)rN!xb5#cFV6CctwJsvJdJaUd+J&<2}=Uyr4SsJV_rkN?qJ)|Ex`*WJc-669I^i}k-))50=UE|Qy_=JQAc6%{=Y#IkEFc->GL67;W1r8W2^D(_s9;OfHkbN-$r)ex2`r>5t}= zch(ON@_cG}7)Za0$-?k3uDT7AI48O~Ti5RssDaT{+{j6VN-+Gi`_5tJ^MxmJXY5?> z%rCdxRXI1p*V3_f!m$@8#5f0(zN(40$JGv(!dEMUh@{tIt!0CiP!{f8e z5a?2n)8NK>GLd^M2^cOR;tQ9xh26#>LCrsELBgml|Md|p4!_qto@``&=N zorR3O=o-`tZ$Il&w#BHg%1!^%`1W@A+n|foDZj|(TuF|i;tkpkO%}N#R=HVKq947q ztVbN4(Ydh>g=K{?i*9c+w@0_%U4zWR-SYEKgEcAo7du~WpVYK?b!IV$FnrS4uXGr7 z3zNV2{V_>v%if(I&bP@3(_XLtRw@1i;jPP581d{btkjU+-l1lO8mPXLP`Bfz=Ema@ zTcO=6wEs4P?EjcN`QPX)(>{JZb9tbDZ8OJLk{WvO1#2B#IqWH}=Q4Q5?an>HY5L23 ziAc#C4h_^P7Vr8Opvd%xom&6f+`6rYi>Dlzl(=E;+tlmjE?IU>>%yX!g7*%~#6QuW z{8rsVxQWhf%t>SL!TpzXw)uIdJ-c+a>a89ZVMQTIi5|l z9e#P70Z!hKgo04Hna$Uk_&3P6Yie|!G(ouh6%ZM(ZHrwdIiZm|I|oBh(FYgRO3?uc z`_kWE!V{gJM}BJltP!OIG#3oHP~L{sXZO zG&TS1ZCg!wam<^|)Uv4}-c18;fJHn=oX;6zK}pELh>=)72$x|576?C zKRf3@f85WM%2g13nrnpOB&Oo4%dk^6e0T7!fFZR3_y^0f0iZz+oL_HeXBv{QHpS7p z9ZCXiHem(3HTg;dJ!d$!*HJ1@{-GHY2mC95E4hHf@&kW>T{=6oqF?60yiFQ0XoseN zqxTHVn_aI5ScZfxPjx7&1|C!*${G8~h&f#k-d(v@?~*p6j#xhn%k#`^8zKtAE0yG? z;Ovn|x3tYBJLELEXCFryzdBnh>^0yxtBLP*B^6^k5|>B^N|eC@lqT3w_PZ9v-Ifb-bv{N3n3&~Hn5I)-))3y-&a6jO z61Pl>h{XC{o5{B=8@ITkxx&}s{U-L+*ffvOX%qED?+v0#n?iQzehIwW@#%=bdlD$p z?VS9(NQW6R`>jaF&2Hpe`ySLrHHOf1QEw!haI$FwMieSnga8XAo>e0S0#?8}mS>%c zknL4(OHTr$q}&fhB0PGR(X<6~=Ci@%9|&_pw#+VK*yw&q8|OCa){tkdnyY-WKq7F`6!Wok_A4Xj{LX5Tehi)up96@?1YMPy%e zl6*9U+N`X z&;7T!Ce|*mZ85LUgy_WlVtSNdl~@F8$Fpgo&?lph9 z8vjjaKh~d8TmDQSu-}!X>3`bjzB<}(#TsxB+@`y@k)*W#D2T`A+PZAXO}9YS?;hC< zTk6>`2U-`6&$?Df)E~48ba`~huvAof(W9i6<`OjuOAU_sd}(-jaM445Z0+LpG*i8C42uxi7lK%PU(|&A1lV5*E zTxM@33yZG%tPYG&HV(;C^MdY!bum8>2x{0BnfyBQKbb zejqM;A{jxH#e%8FGmB_N<0GFnoP?VCQbu9uMbt;SmlMD=32{uJ*1)iL+A5<7zyHz) z(z0BDC-b`Sxaw-Y(~9Rd!#CMaeW0<^TmG^mYvEp`@4XV;L=j43ayp5T6ZSYrmsndv z#Z+PX@WTZu&uu0(0-*5MBYuf{BoA6CM9oyIWxiQC!#q*Qd|4*meuq_S#D=GF7wQtf;8ORGF^nK2!@9-XjV@pOYv;2 z*kD()FmT3KyRou|si4LxH*GnOMYcf$p3HS!rClMoYSi4(g@GktTflhGM+mTPCpoJ9 z3u_2>i_9vZjSbhY?@y>%dvqOIMdQ2$;}5v{1w)=P-4z%8>dWQ=`IT75W}NrDa;0*3 z*;ZzX)&;Gz!$PszQak$H&ub`@lhZi{*0Z)uk@AptBJMI=?-scljoNm9))__e%%$O4 z#of!|s8i&ith@{I&x^O6*5~C>Xbd#eKspl}j!u&n0J$toj43u$&MH@%4aU)D6e0__oqaO6?!ESDNw1MP3EF!4ku-%4?=<7tO@8%O{)ACCpC?ar9``$hrQvFI zHs_yIN-?hdQZKrri*(&sS6bpKsEbG+>y39Wac6!D)4Qg#l^L;6|IIPYZ7JZWH|pX} zbQCdNJ_&hC87G2011oGxsMJ`}*%_kpFfO`aA3R!&4<{6;nxyMJ_Zw{=?=9CrQtM=5j3*?VT>%e+Ln42Vl1uv?}w{JfX zp#CTM$hE}h@B0SASz_(7^B$`92VXQAYwb3hOF~w9h7fWFs+#bmO?wtS z1@u(9pKvy*j^w@_dnxl$jqXkfCFc_=2%HmNQE$yh`jR*~MTd%l6e?GI!iz8OA?G_h zzP$#Nd75kUPfx!ND}Dz|hhYT}#m2x@a`%CsQof*yQc=*^>$`S1PyJz4wIOJ;MeTr0$ob z(B3e^6KEk+@3Kr9J@aCi`VCJNxj8j5NO7-?i+eR?_ZUoq0w@D<1pP4Njtb}h*d+r} z72!=VINuL{1b!5p%aT&Q3NEsYe;_zf440Rz^~%@#?Ar~PWoWpWCyUjE$pe{Ut@DFc z`EA~(;?HbE51yVNaFg6H5r+&a063=S%anQTRsQEP*?~i4>){#j+Y|3$3^^COlC@A7 z8vg#0)YaxL%Rv;plL_W|X>CiL%zQn`TX^zyg4N6iF&cL;S{EYcl!-&l*OVLa@MTOm zVL|fFJTZbqZd<`KdDON6PCYzJl|Y%8F)k?1fClYXM>%~W6(B3E0R8g_=5aP^m^h<0 zh!Mi>r0xtSysA}e?|hved^Z{+57MhI7tK~SPGVp&Ik*EQ2u=@8HM6iXWT$sw2T@6& zS5Rh8q0%sCHvpha>Fn*m@>2z-tXsa1ye$nMzE&qzF0*xrWK;%(TCRH;Cx?|GRN`dc z*}Gp9(!bHS2cC^*lv1rQRlUJtj$^{o%*=k=T2|dx1?p(*SGicRg_-^RWlQ^t9ogl+ z^Q803tz%^7Le8^~T^>gR=G-P+mm_E!-W>9*m~c1RQK`92E~C6UNE^UAEd+Iiyz9yu zQob6Z!&gV!0g@G+L*Sgd<7Pf7(-`^HHs%zK6C4CIm8u?h?uCtI#*hr=KI!f5Wia8? zQ&55Nq5+LbN;PpvONr@FkD@EP@!I#+3Mg$p#UIu2m4mKrg%B?aWTs-AgQbW#6#<9Qt!+C%xuopsdiZEqIm1mtZwFdm@AufOGj)% z!=w6fMT*>n!#xKh`rf|M!U`#|KhD0s-~fhp6n%YJHGL5o#>K`aqDM?RNK>6=%(Y$S zXKJhP%Yxp}$|7*+4y!$J`b3}@W0qwcWI#hw#L1rxNq`Pa?M)&bwq)Rp&Mf$ zcja)fn)|>8I0SMEQu~yd+}_FzK8X6l6W&qPpa17(aORvj4AK$%0OW22dWP+zU&OV3 z<)+5q!$gcb1g?9g?|2x9a07uGxlIJKAl^=*fVb9^M9^-4MZ)%Ds09D24;LHl;D zDo&}pZc;@T^_+zKfp8;5sOxOW33qqh8Rd9VKPVG8$>B9HkoVz_q(iV=C5mD!b=0oK zoyc97o*u<{?(6|nV?IP~D~faXwE)PjpL;rjB_T+D$>iD2m>8ygfL)={gUB%qKUDeB z`=`ExH0`hf<51wKnQWl_>?>WADXSTs2Zdl=C{4C+TJsIRE7|p$#hB4$Nl1nYmB$wL z9@gmeGA=Ak)Qk&yRmHQ6=O!J~G6B1q-d@HJyIFOnc6fT6v_H_NR{w4y@n+Yke(L(O zNBlnQc%5Bx&FnKEty?l?mZ~=0MdkY5QdJD_F6eytp~g`z_Hsbi0O~CVKm8yqdY^Fq zI71f>r0;}@RResBM3FPKJHwxOdXByPe5z=1avGPLt_Mi~<#GazKLS9GgeQf8 z6Os!C){(fOZgmtBVV!Oj4L^zR1|Go;5HMLnb^KHVz+w;FZuX4363k))lp4S@10=OW zqZ+k1?bh@IaUNQh%>ia!4W#228q^-|&Xq=psZK_Ys;HGjh2HyQ4KSdxVE%*AAc}Lc zA;X=<>j?_p z@ia6oA6P`oRf`BBS$+bgk`;P;8Bb*!`Ud#I7sx|yf~7_^V;r*cT;T_L03ff!CP2}v zTbcdW|I()KXjkQ4<8o(yRN{tP*MpS&|C@}H`Je4+B&9s`{FRl}76xIZW z2`|5-Mzd#hcvEI=a`J*KXqbaB*Sh%n%}N8Zqkytxl$N#5DCrkw$j7T;Hxx?g1Kx%2 zP4H#2pT-^VhyJO$Q{-9Li z97<$pBQR)wnw126+q?2w7I(aR=e&*==@0|5ER;!p3@bD~j>V0JyLM9hXkzVUJdE{J z>5QxC{bvm%FXm_g07+9m0xLlQEl0O>1mM^{tLE8@H&U)N@g7`r_>1+##$5X43A8kB z6YP7UB*wAp;p8UDSfZ#m@l#)*zek#3vVN?!=4n99fiYq1V?JV-r;V@3-OE=El+Z86 zU-pba`#Ek8Mqkt6dgB=p;DVZOfMNpp{RckSe1`ZJ^5u3MOIaWuTXmcGAYnfrq>%Ic z#1hZu6RBoH`y4P7FvALrqG)iPJ=OYXLqf>sDkU9i9nmS4( zS#3tc83Bv2>0M~wM=Jr1sO`O~Q(=|Uv2 zeC@J@nB25E*a>K`9fC*;G7ifQJai$b?pH)wc5;n12i13o7DdUd^cCrvPk*E&bN8CD z^wS_$Oyq!Y9zI-J@_oDVcOk>fxns!BwFO+*3^3vXx1E{BxC&}T=-X8f{BU27(gLv$ zqyjP&T7#u11LUz=pko*$bt;=D`k+Dg> zcO=aGMzy$fgbSH@XoKbfE79k=!Sc1on*q)KE@nDpw>6?ag|t6Zo9)HgfVHz5`5r2ZPh&8$&^I z!}lj9u~Y#Vpr0>yvS0oas#vN}pFvegK{9qI3R#&&dQU<8&c41&N&*K`4ayb*Ke3@onn#!uziqyrWa($Mu48gxuB|OS-Wep1MzR#vGAHoC~nbOr*x$&%<*} zxI?cU44e>R{W9mo%VBqFW+g^g{A$ubW#9<#^mc__h_~+E$cof;aRIp<&0Fm`{R&q=(iyv`V9Yw7v@Y`2Gy(vU zD}uE{YaQ0MmO#m8CgPtJnFys@Uzgv3Q=<-qdb_*Ptl5Ex z)K2bHg_UNyRV~sl$~1R;T8^V>!Wq|zooB*J(g< zaYuEr?>c4P_DPXI4iQjy=%OxK+&|P+6AkDZ71~AW^TCKGJ-MZLHBOLedbJ;`3)&n- zr(1^Jfg5H+Ki0R+H6VhVhDf)*qA2$g8ZumcXy5dGRDw;gxl{=dyNXoJ=)#`l#Yg2Y zWYtT(nB7v1xES9`(p%&$t&3i9VD?^qr^>wl)ra{D&+)g z1j7<>pRf3-A11OOE!qJ+Oqj7itrQoh`gLQBJZ#V6`PfN`v7aI2PuBc@M35`?zmF9AJL*hAW{v-r838R)Lvk$P zzUvGbuuw!Bm=79ifzLs0fY`o-KpO%nc%Omqc))p&8Ps4r#P9)Y2>ukTy&Cj`bn?T( zhf{;Z$f0ochx)naUX>aVO=?t@fJ1* zr8PR^4fHXet%p6UE~4HNXRO1z@xmxb`=)GdRPmGaC^K>RAl3bx4iAta>mm+a3 zYp+hWaEvroevfKyb(ns12ab6%{#6WaAiFzOY+3o(>5e6CH3TGLl2@Nve>0fbH+-Aq zOzfRM(pqvrr|*T`8T~GSZT%tOAb3?g4qTN4l9*S5ZJs-NNG>MTuy*s~w@0D@-{shJ z0)5>CisRy;f)^Ls7bkdTJtF67yW)L{M|T#>2~OZ6SSV=;O5(E%LP#Z{i3QY#8#r%$AR52(c9Vt{N0vUID0 zXnQADd!SNuHyDA6yR7zjZ7F+z#S$@^zsFHABa|Q<5LDvC6Z?~eQQ9-97BO$#C z_>$gX;ttVnDShh{&)cL(27^JVLCkb5iBwpb=0a5>q}kPa^4SG$?M;&A@e!FwdPVr9oa&F>ASBLS`Ty0<4MX)nOz0vHuf(z>G|`%O0VSz3p(nUWdRyqu>hP0(*liO2-e07Vi?i=Xl6MhvpKT~#{~qU-Sz|V1@)Q1VVMa`_JCBGR6l^S zDRzcAc`06ceC{Bz5opiaurBv}w*Y=g(+2>UJeyb~{fgmX(r8(4eGv7FU#$B!cVA}PY_YZQ&k~Ab(>s5x94g$fCE<-)` zPY^8cuZ+zg*7tx@$PhlS;o4MnoJO-<{iv!%;|!rO-|mUZg00Q|kb^u?rs;c<)oCp? zrpMFQwlB)?E`#G6WDXu$Uj>@Cdu2@tC#_+Oe73e3Tp^%;`p$T&*-&^irLxlZ(Ea57 z5vO);Z~9!@Y#qvKLJ2Go!!fz;X({PnwhPbmU5%|g_{C4S+|RN?XFD^qKi2Ftwgu! zMhZFJFd`4|cf%OtkctZ7$aU7PVWLC%Ke>nh#Um!>XATkAeLON`BD;@=E1h$C2F=m} zK({NW7P$ettMp0e-R=N{J5CQO*IQ=3c|mIiMxePGSJX9P#t<@QnQa^cPBUN__*uER z-U*w5V^<;RBhwm)*b`{U>v7EDBGCI(0qgcPWf<`473d!?3XiqJJ=ts&)p8-Nje4^P z3LZF?7k%*?`Q+oNrEt(sf4poTGffG}w%Kc(2ctO!q|8h?p|C%^q!;N2U}+RLL#?$S z-S+!Aqn+CIn;QZyB?oOxa8mpHT_${|(&s>g%1LLMTiS$r=SPHL3h%z!G9#(D?{R^**gP;o_82K>3V1V zEIPkZXBS{VNjd?J`?8r?i3tIQ@8mtLDOCPiD-N1OY9yleS@8=Q zbQbQLpY^G@Gk{wl{lvQ1p_V_+1sakO?y1)8Ey zCki{O$3LKcylEz0*0l9%6ybPh0&87LpyY}A;SW`O!_&hIg@s%)l5xw<^dQO!WCE=( z*$b!Yed^sCT4IStu=ZoQ;oJ1h@bgw$rR6&}A8b~;QP_urBRJueeEND;ixK@WLjkFo zSLl4ABQMh5%AbetcGaN@&k|_T z5vhJpEH5{I?W+*=E{`%;B&O*|4@ey??>#m$lKE7o0@0^-b0 zM~WP|l#yea^{Q_3<_hHJYx}BkW{h>POct)qVFwj`U#&fAfwbGj!o}$F-llrnm+h^! zv8+#XnpiK&=eskdvzAwz&OGf}@J)d}%GR^q0m>_daT`xy|yEOtDc>x7mLiwTYABdOMtkV?I^cel1A8N?=jyL^T;ITYXlntZp*y{j# zBw|4s_Ll=r$Jh(#NeWBaXb@VSK#jV!K;&>1@J*XjUqXW*aSwWNDxvkzxJ4U@A_Y|h zYfb(2US~j^@X!y%3NToXU%f)qL+as*BQ`b&%m|3ZdV!iRycn8v3hiUo!fHH2v_MX^ME$#TCxza}O6x94vp zkw+Z30J)PFRQa)F19Oov1s3QZUo6Mi3vx#~EP=KNW-$>oOFRR`qmL!)nco<|mj_Z8 zq)#n(C2LF{rGzF^vLB;oLZC1Ww%lc|Y016ZJhKKYG6I}X46W!7B*1)zXX^!-B+O=TAL5$AcrJY- z14LTMW@Z3^y#aKNjiD%W%4IsJpouJ$m~v-e_RHugUVEvjxf~R=d#ku{@kuVKZp6}8~^Qdq+cIfj>r7< z%lWr~x>-|lSz%|PkX0VsuliT36XdIPz0%RcDumMPH0z+dVA&xD%#qOaQIl9-m7(TiWJK&Ay8; z00+u#7I^Hem!M?>go(Te!0Yw*`+)!nY<0K{{9v{iI@egDmTCQ)^{VB+lP4oNXIs3sBtsvLq>+MkGy%aS85XXzs8N2 z?2cvN>2U#%E4uPM8ykoL9XTF?pd;t$VwsR1$i|%IHkc$a1aCUh?3zhalk)%pvxAtf zFscm8p&0R_AVKtJo#jxeLSqIs_Y9iyz`7c>X>l?8YMVmA5$C`NZ*$^qy(qd8p~N=e5Cs1H?_R0^NgQ z2aAy(wWuPwtInA|)K1|BEA1TqaCBF3?IY%1X2F7l=SE!9Tz9Yjws28iE(e|s7-gtj zvWq4ARY|+Ba9()6wgv;si_{<^9faZxyBHc$sgHug9~`L!&&)wQ#Eb(hZ$uQUsZjh; zBC;jg((Sq3$(Go@=xP458Xmr1KDpB7(8;mOZ#BKLIn80@;5~aAcZ>N-n&p6sr;6%s z8^W2P9P}mVcKleiXIOwbiP*CNl;yenFK|lO&?X%6qs`qkW5hItzU772>IeF5GT^%^ zeA+x1Aq)fml#9EaV8Be@PP*q?ntuPH<(Jn_Y9}xyD-n#)F_1v$BBN%=9)(bTb^<5D z$|$Qjw2k}nsVvuHJrJ)!Iv7~P+cIp%Kkie6l@^$n30uRxzKe6hIv)uujNv_Ic0{7r zJ@OId&wV+831TRN%ooysFiXicFYr=SlD^z0%XZGQ_ej%~g9l`7x$n3he>zx^pK5kH z?L1Ff#1QdTKK>4-VC-&I+qAFriEF_ZqMn&w^RJbTp>Lo|v6^B5KL<;^&t*zH^;?BP zBZ8&0I2DhoBy9A%?&z|jmzqm7xWAKULAYhum9ozg<$J#V>zC#0EM74@Y*A2INPAYu zx_6vL4CS*Yv+#uFMLauFA)_cK6FQ3Ei;ih}4VA828VXsx$;2cb!Jd44aGqiJ`La4` zXg12w$?;bX^Z!r(p7u7zznv&l@!D6@u*{o((xETw+tX%^{wQ8l)rAMBrmmTC>ey*G zi<)bZLyBsxG%DG<)=Ja%u;lQB!!o6k)&~bs3J0gZ3b)3pCc61p>6mUDdLjKaf1&n1 z*k{pY2x{S-#j`%6^C#`^EZ=QiH@fXw(825twHS&KI-*RJlKnE{XkdnaCq?Uak>lMP ziT2LDfc*B#YV*6o9USip!BLC~m-6cJFWfF_oKfDA+j0jU{5r3u(jkeDEdKtLm? zpdz9o0#Y*4K_p5j0wPU12%$&`C82~sa^pKNI^*cPwZ8AYHQ$=`9)Dzodve#!<=m5f zetYlV{_R^S^s|%uX>ldXaB|G^%_R-pw&nO{wA^z?LK=PoUq#4z7sKQj7@w<8lii-Q z#jl$W8yF|dlWk+y^z`Qjr5`)(HdF0Zx=O~yky20bAsolHVyRu3=~p5Ky)=GcF8ScT z=8W&|;ifW_`~JbLijN~60z&*Z-K8dVM(jcBD4~#fy;0B~D+DpIg-)0TM5oH46HpkX z?-wQ6XHkfBF>eUTnSrg(|ycgu!8aV6%?bqpLk-|boDygn0)#inT8e~n}s@=uVf zV^J)5CI!%sl?u&!N(1P{&qiwFcR1?)aLQ0|_{O=DJ!wGShTMiN$swh;_*gb@bRfsz zSgHrT;rPY45ddHW5d}Xv&>?95rknZ+9qX@?A?A4mN9@AYdV^Z&w0a~LN$?b{x z(MgJ5Viv)<#CE2BkcN^AwR|6|+qw~4!$fWU`6{LmHhNDqvra<9?0l0dpO2xra!J3S zA4w;>Utues_6CF+tz36vyq5?$uHlg>&{ZZHx77*sYOaN&>4W(;us zM<{e6_^0YqyH*k2tO6k(@bDw|bOG(M);Zmz_BGU7kx1wMLfY;69Kajrb?w_kJJ7_wN=U3|%|>ggBCj$A^c z>NB;~aqDSaaPChGv*2gLl2J1m6>is}_q4p3N!!FQf88~;EE~A%pwSME^1Plm0)zc>Mm z$EKIWZd>Rb-)>!UPV4?;^V)E$O1wJc&z0y^3nBGXz1aBxN}Mb#rfB1{<%|(VE_1ca zwSlA4T2i(t1WkAnnM!Go;bHiVfaMCqLbA#;D0JPXx^pu2s(hS~&7z8|B}FIMcR50A z9iY!YT4S>MCKU`p)o~#|>c}U2^11>$i=fL0OU5#6jggwN?!ELY!#f zr4*kTi}3NQJw|D5W>0tB7sVc5s7G5!QGR95|4$rSKiFK`&6JGrPVBf=TO(sgZ3&-m z$~J)sB6Qy;h~SiZjku<+$K)v1)n((X(3(kds>)GYAGy$rhL6zQJARHZRJ!Tm30z&H zhagYN|6rc!vDqQ_a}B6h%L|?%d^O0?cfGZ0K&?jgnKXffa3k2(aMhf(gg38y5Hm6J z?H7k5@_xRQ4ARsAgp*xuoF0YOh;=ruAJ*2XYRR~opVd4x){fODP^*e`E--G-K(i8a zX+3IJ+u%e`Ne{y^-986?^#FHSt}r8%ok3}X_O~9v`Z9+Y|^7#C961=cSUYo zs$q`~Ky^RvlH8?1Gu8Mhi;+E*lk;mxUCExYB}G+GCLYdqHell>T8Eeh8)0LIr8$j5 z6an5+HtJ`#6)ooORMI``ZFP4>W$zypdKJ%G;mY*m1+Cvd-=*z+7_eyS?A)v<#)F6O z#7IgnHX)IPXMjk`ou5!MZ|42zOQ3Rc$x)z{Aqc~}f?hMZr8fwD=IESSA){T|yFrs_LC5*zPY zA3nAY#v^d;x|rr}0)(2M-5ZLecy&Bg#?^pbY63OB33hgyB95OwkG*rQ`i$iU{wBN} z&Y+-PQ(sqg?0BAXkaU|yc=KRfFy)t6{qFHs*0{at`*PQ{XPpr`dett20l21dtw5KP zjY)jV)eK2RCrXTY_YgA9Y$FJJNEpIk@XD7N3%TYscl)2kw(x(5Yq*Ks#%o370G>RG z?dhU2CeZe_Dn}}Q<8!An*u(Sr4ZQc*Z1hzgA6t83cx+Z=Xy5aaYf&ABLI@jfClrep zV^dhg>`6okO3c<+Bqm ztMr-JREjW9$|Y_kSI7OykYwF!@dJEYVHKsKcIh;Qgot{Vf@3zwXb;ylK}PY1U$G=E z5*1fl-R9L}Crq+YGw=!WVX`vxgwhx7Mi@i%@7Vw_fdGiBMw%yqZFQd)B;4F+F+t{v zHSmnh;sGOhIb})%d$<;c@tp2KW$BFaJ2NO~cN2MzL*^-Ms_+q&f>d5DVnZr&?Vy)n zR=|Mueer+~8d04sj)jD7omVf-dxS!SNV~iWtdA4)n%WM%b!d6GoZ$Qk=HEsNpB`tM zaZeZc<;T3s$-NP|8nnKmSNZvjK04BSFex6!XYAp={)v*fQ4(=GOzKr~5{!Hu3)K3)K>$lZk1U{ zUm~^tk$3VN5?hhPeIQW|`ELf8xfK7Rxev`1NAoZ%zND^OP@w4WtQGrExA-9g&tLFq zgxBDH`cYSYpBC!nc+^Nuh8tHm!k(`gG zWb5*kr-k>AFFA#wV-0Z|*a?X^Ge%n4bV6~3YHfz9udvWYo>n6}Y;P7*{`T&m5oJyF zVugH>GJA%( z1hC6Xv}JKmPYjZeSGP~ zI?onzX5<=jEb5_nn}Q9;OU96n17uCUL6k5K?%s`9-ZB)$e3o^3>zm3Qk%Hd00*N+% zD+>HO5$3;p?SVfr{bJ^8#UcVrP~$p4;-F?h;()x+QAz_}%Jm5@(d~`mIr<|D9^ceF z;V(%vr8ZroHvRDj(hbU^^upG$>>E)kd>gk>v&nDE)dENa!6x< z7QXNx0=*0ctjgti2x8||I=-T!*DKiOLzrm$mX4*{(J#**J}6X$%|wh?(P{!cPwhJhrRb?%)ZsTQy8Y{BFD^Uv!UO>p5uEn2!}MSw`YeM-N2^fU0VE4~bNyH+(NW zp5`}dSzI|4a~$TOs4E4OOuCfhjBlm*S6(Czcp}%cFMhO)G*$16Er<-fXCRM1#7435 z+1cH(l3k_^`1N#2M)76s$MQQ7<5pN2w%w^0N$yczsZSDcV=+v(rc`XSf3_P_jZHu> zQn^~7EF^}&={AoC?9{ybdPA1Om1maiwK#K9jT-AX>A*;f?dO_`ybW0?=Phf6Ib_>j z>MnJC%d)_S67sIF?0!O4G&gb-15vpt?pep^p_uq`!946h2ZT_f2 z_RR8W->Yvnnoml~5of(vUhILVIC-|%v#49h#4X$kiM+lj)jg2u`7QyZ2pu8GJ%Bsg z`=+%n#ydN_OZ_RllDd0v3Fb0Iz#B_MZrq^9tbg$W731N$y&~*^@`$a;k&)4QsaxAz zw!@xUw^5zEWLG~1#4W)?=40ZpVWk&AGC?rCqMc9ys!x{zU`#RKa9OZaX;@ia2bW$1 z`)s#impo`SvwW?DW(l4}f_0HBC}>N*zpRo0bHVUfMJwAh?<_fu)r{Ca4b6Z7o*LfC?|H-nlWAxa?yV0F)%;7JSvk@ypY}Oa*F8eq`_Y$;6afAv1$JA*Bx@(DQ7> zQqv95ObxS3s!X%D?PYd|atRinePbm%g%%x*J1P({tmjdf+BH#IvJzhAufg5K%q(`$ z4%*T%z4O)S8}gellj-?dDa-Nwqc1M~ATfynF7r{8$gsKb*{5{9r*TU9SI*DC*9A_A z*xiL9xz04ulgp@iJTd$n$DrXR7cj6xp=6hro-_oj)s`!lka)>$sS z?2z}@E6 zM*Vyu$n}e&za7AOfPT$DJ*x~#MGYF%f}H;kpI}TNM)>Ce309{#-)ui~r3v(ur;1*B zJKYCml-VG&#Q12wWAFW`7UeNS&_$8*ARfZS#-eQ`KRer~&u&0qm3!(}#HWezHvQLn z(IlQ!*O1oPVGo$pb4y5nSe z3{TQ(6gVsUw1Yv#vI;20q>olA@`GwXYixEfw5$!m697J$EbvHXKPch^xr1JBR=@Z%HtG92ieZPP;v0+f z7}aHwIMGLsf7)Ksxt%@~LZ4a!rooeafun$LKngKUhR120auzwRKLr#I4~4sw49LxR zPkWF+tlO9f`5!C=%4Sms1ywe* zj!eBcf*pV2mN+bE|2w?=dqaC)fY(ArmK+0_Jsf7w?ua)>Q4lw z1*lZL|MIo-?_M;Md2zcWhpgfMG*55w`#w|Z|7~CKcfYR&@^=L0vx#C)pD*hB(-KM_ zL4dy9x+z=*f50#VeFlJ~5dbmyoAw|U{PDL~@YCo7Ts0V`+fy=l0jQxb!&V8t(@1Ua z`ub%+{V_x9cV69h+HGH%$;HnW!Z-i8xmpk+`m-IG{y^DG=zffv@UcR$U?A$YU!pUR zCpYD+MF>KmKzCrUT3&)>F$z`-wifkewInnr;J}U{Fb0MlYK5R(fL1Z|xB*`_bA1< ztG$<510#tX7tl(R^txK7_+ICO1i;qO9ILk}30mfBU%ut?AT`@hh`WnS%Z2#0YB-Z1 z!?qTC=e?!+)0n)ikv51#6k~#XwQEYa88!Zvz_ka&&aV&gPKV4#Za}G|hB&sb71e8Q zse9baM-)#L&{@Aer0htFZ{5hsK$#I}{a6vopmaK+>kg<|EpI~8tdHSbg@>@4W zmeKCTTV0&h#kIQlv-;XPEgGxuOzomwUEHk}H`ad&T)|QaUn48$uMPpSN*KA}XT5;b zYOaEc?*AUDp)>Z59>d=U6!^*_8A7cFh+j~4fcP9JbNcgu_v|$T)FKL71dNL?e9>e0 z-sxKO!xp{UZ@tJxz_wD@;Hk49{s8HzX1F8`7Hnd literal 0 HcmV?d00001 From 3f120876199c0f2f18fd05c479b36f65eb2cff6d Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Thu, 18 Feb 2021 01:28:32 +0800 Subject: [PATCH 40/58] update:week 02 --- Week_02/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Week_02/README.md b/Week_02/README.md index 9a998975..aed17877 100644 --- a/Week_02/README.md +++ b/Week_02/README.md @@ -20,7 +20,7 @@ - [二叉树的中序遍历(亚马逊、字节跳动、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_021_94_binary_tree_inorder_traversal) - [二叉树的前序遍历(字节跳动、谷歌、腾讯在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_022_144_binary_tree_preorder_traversal) - [N叉树的层序遍历(亚马逊在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_025_429_n_ary_tree_level_traversal) -- [丑数(字节跳动在半年内面试中考过)] +- [丑数(字节跳动在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_026_49_chou_shu_lcof) - [前K个高频元素(亚马逊在半年内面试中常考)] #### 三、训练场相关 @@ -105,9 +105,9 @@ } Collections.reverse(res); ``` + - 本周学习心得 - #### 五、疑问汇总 #### 六、练习汇总 From eea2cc6e3f98b5b401aacdb112b71ac61c7f9f7a Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Thu, 18 Feb 2021 15:39:34 +0800 Subject: [PATCH 41/58] =?UTF-8?q?update:week03=20homework=20=E6=9C=80?= =?UTF-8?q?=E8=BF=91=E5=85=AC=E5=85=B1=E7=A5=96=E5=85=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Week_03/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Week_03/README.md b/Week_03/README.md index b573d4c3..33808a5d 100644 --- a/Week_03/README.md +++ b/Week_03/README.md @@ -4,7 +4,7 @@ - [回溯](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Backtracking.md) #### 二、本周作业 -- [二叉树的最近公共祖先(Facebook 在半年内面试常考)] +- [二叉树的最近公共祖先(Facebook 在半年内面试常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_036_236_lowest_common_ancestor_of_a_binary_tree) - [从前序与中序遍历序列构造二叉树(字节跳动、亚马逊、微软在半年内面试中考过)] - [组合(微软、亚马逊、谷歌在半年内面试中考过)] - [全排列(字节跳动在半年内面试常考)] From 783dcae42ad0f1e5289a3dcffdbcba05869a0965 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 21 Feb 2021 01:50:28 +0800 Subject: [PATCH 42/58] update:week03 homework --- Week_03/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Week_03/README.md b/Week_03/README.md index 33808a5d..003a9edc 100644 --- a/Week_03/README.md +++ b/Week_03/README.md @@ -5,8 +5,8 @@ #### 二、本周作业 - [二叉树的最近公共祖先(Facebook 在半年内面试常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_036_236_lowest_common_ancestor_of_a_binary_tree) -- [从前序与中序遍历序列构造二叉树(字节跳动、亚马逊、微软在半年内面试中考过)] -- [组合(微软、亚马逊、谷歌在半年内面试中考过)] +- [从前序与中序遍历序列构造二叉树(字节跳动、亚马逊、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_037_105_onstruct_binary_tree_from_preorder_and_inorder_traversal) +- [组合(微软、亚马逊、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_038_77_combinations) - [全排列(字节跳动在半年内面试常考)] - [全排列 II (亚马逊、字节跳动、Facebook 在半年内面试中考过)] From 0a7149a4d7f6f0b3cb6aa39935183d5dda9d1ccf Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 21 Feb 2021 23:34:08 +0800 Subject: [PATCH 43/58] udpate:week03 homework --- Week_03/README.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/Week_03/README.md b/Week_03/README.md index 003a9edc..a1f4dad2 100644 --- a/Week_03/README.md +++ b/Week_03/README.md @@ -7,8 +7,8 @@ - [二叉树的最近公共祖先(Facebook 在半年内面试常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_036_236_lowest_common_ancestor_of_a_binary_tree) - [从前序与中序遍历序列构造二叉树(字节跳动、亚马逊、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_037_105_onstruct_binary_tree_from_preorder_and_inorder_traversal) - [组合(微软、亚马逊、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_038_77_combinations) -- [全排列(字节跳动在半年内面试常考)] -- [全排列 II (亚马逊、字节跳动、Facebook 在半年内面试中考过)] +- [全排列(字节跳动在半年内面试常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_039_46_permutations) +- [全排列 II (亚马逊、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_040_47_permutations_ii) #### 三、训练场练习 - 递归相关: @@ -20,11 +20,10 @@ - 本周可以沉淀的代码 -- 本周学习心得 - -#### 五、疑问汇总 +详见学习笔记 +- 本周学习心得 -#### 六、练习汇总 +递归、回溯有点难以理解,都是参考别人的实现 -[leetcode-做题记录](https://github.com/xiaoboji/j-leetcode) \ No newline at end of file +#### 五、疑问汇总 From 10c1e948baec1dfc1b2daaf5c7c560ced2b4ed83 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 21 Feb 2021 23:37:01 +0800 Subject: [PATCH 44/58] update:ReadMe --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8ff05c79..58c212b8 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,9 @@ 学习记录 -- [数组、链表、跳表、栈、队列](https://github.com/xiaoboji/algorithm024/tree/main/Week_01) -- [哈希、树、堆、图](https://github.com/xiaoboji/algorithm024/tree/main/Week_02) +- [Week01-数组、链表、跳表、栈、队列](https://github.com/xiaoboji/algorithm024/tree/main/Week_01) +- [Week02-哈希、树、堆、图](https://github.com/xiaoboji/algorithm024/tree/main/Week_02) +- [Week03-递归、分治、回溯](https://github.com/xiaoboji/algorithm024/tree/main/Week_03) 学习要点 - 五毒神掌,五遍刷题法,强调练习算法题要过遍数,算法题不仅是做一遍通过而已,而是要通过刻意练习达到对算法熟练的效果。 From fee2fbc3b4afaa73e60377860d6df0ec05c0e9d8 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Wed, 24 Feb 2021 11:03:22 +0800 Subject: [PATCH 45/58] add:week04 homework --- README.md | 1 + Week_04/README.md | 30 +++++++++++++++++++++++++++++- Week_04/note/dfs_bfs.md | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 Week_04/note/dfs_bfs.md diff --git a/README.md b/README.md index 58c212b8..e37277ec 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ - [Week01-数组、链表、跳表、栈、队列](https://github.com/xiaoboji/algorithm024/tree/main/Week_01) - [Week02-哈希、树、堆、图](https://github.com/xiaoboji/algorithm024/tree/main/Week_02) - [Week03-递归、分治、回溯](https://github.com/xiaoboji/algorithm024/tree/main/Week_03) +- [Week04-深度+广度优先遍历、贪心算法和二分查找](https://github.com/xiaoboji/algorithm024/tree/main/Week_04) 学习要点 - 五毒神掌,五遍刷题法,强调练习算法题要过遍数,算法题不仅是做一遍通过而已,而是要通过刻意练习达到对算法熟练的效果。 diff --git a/Week_04/README.md b/Week_04/README.md index 50de3041..634a92f4 100644 --- a/Week_04/README.md +++ b/Week_04/README.md @@ -1 +1,29 @@ -学习笔记 \ No newline at end of file +#### 一、学习笔记 +- [深度+广度优先遍历](https://github.com/xiaoboji/algorithm024/tree/main/Week_04/note/dfs_bfs.md) +- [贪心算法](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/DivideAndConquer.md) +- [二分查找](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Backtracking.md) +#### 二、本周作业 + +- [二叉树的最近公共祖先(Facebook 在半年内面试常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_036_236_lowest_common_ancestor_of_a_binary_tree) +- [从前序与中序遍历序列构造二叉树(字节跳动、亚马逊、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_037_105_onstruct_binary_tree_from_preorder_and_inorder_traversal) +- [组合(微软、亚马逊、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_038_77_combinations) +- [全排列(字节跳动在半年内面试常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_039_46_permutations) +- [全排列 II (亚马逊、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_040_47_permutations_ii) + +#### 三、训练场练习 +- 递归相关: + * [指令计算器设计] + * [赛程表问题] +- 回溯相关: + * [单词转换] +#### 四、心得及小结 + +- 本周可以沉淀的代码 + +详见学习笔记 + +- 本周学习心得 + +递归、回溯有点难以理解,都是参考别人的实现 + +#### 五、疑问汇总 \ No newline at end of file diff --git a/Week_04/note/dfs_bfs.md b/Week_04/note/dfs_bfs.md new file mode 100644 index 00000000..8d18fe29 --- /dev/null +++ b/Week_04/note/dfs_bfs.md @@ -0,0 +1,35 @@ +# 深度优先算法 + +深度优先搜索用的是回溯思想,非常适合用递归实现。换种说法,深度优先搜索是借助栈来实现的。 + +``` +void dfs(TreeNode root) { + if (root == null) { + return; + } + dfs(root.left); + dfs(root.right); +} + +``` + +# 广度优先算法 + +广度优先搜索,通俗的理解就是,地毯式层层推进,从起始顶点开始,依次往外遍历。广度优先搜索需要借助队列来实现 + +``` +void bfs(TreeNode root) { + Queue queue = new ArrayDeque<>(); + queue.add(root); + while (!queue.isEmpty()) { + TreeNode node = queue.poll(); // Java 的 pop 写作 poll() + if (node.left != null) { + queue.add(node.left); + } + if (node.right != null) { + queue.add(node.right); + } + } +} + +``` \ No newline at end of file From 0e0b312ab7bc23ef9cfb3de1436c2e82c67a60ef Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 28 Feb 2021 23:30:52 +0800 Subject: [PATCH 46/58] add:weeko4 homework --- Week_04/README.md | 47 +++++++++++++++++--------- Week_04/note/{dfs_bfs.md => BfsDfs.md} | 0 Week_04/note/BinarySearch.md | 1 + Week_04/note/Greedy.md | 5 +++ 4 files changed, 37 insertions(+), 16 deletions(-) rename Week_04/note/{dfs_bfs.md => BfsDfs.md} (100%) create mode 100644 Week_04/note/BinarySearch.md create mode 100644 Week_04/note/Greedy.md diff --git a/Week_04/README.md b/Week_04/README.md index 634a92f4..0dadcae8 100644 --- a/Week_04/README.md +++ b/Week_04/README.md @@ -1,29 +1,44 @@ #### 一、学习笔记 -- [深度+广度优先遍历](https://github.com/xiaoboji/algorithm024/tree/main/Week_04/note/dfs_bfs.md) -- [贪心算法](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/DivideAndConquer.md) -- [二分查找](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Backtracking.md) +- [深度+广度优先遍历](https://github.com/xiaoboji/algorithm024/tree/main/Week_04/note/DfsBfs.md) +- [贪心算法](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Greedy.md) +- [二分查找](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/BinarySearch.md) #### 二、本周作业 -- [二叉树的最近公共祖先(Facebook 在半年内面试常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_036_236_lowest_common_ancestor_of_a_binary_tree) -- [从前序与中序遍历序列构造二叉树(字节跳动、亚马逊、微软在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_037_105_onstruct_binary_tree_from_preorder_and_inorder_traversal) -- [组合(微软、亚马逊、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_038_77_combinations) -- [全排列(字节跳动在半年内面试常考)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_039_46_permutations) -- [全排列 II (亚马逊、字节跳动、Facebook 在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problems/no_040_47_permutations_ii) +- 简单: + * 柠檬水找零(亚马逊在半年内面试中考过) + * 买卖股票的最佳时机 II (亚马逊、字节跳动、微软在半年内面试中考过) + * 分发饼干(亚马逊在半年内面试中考过) + * 模拟行走机器人 + * 使用二分查找,寻找一个半有序数组 [4, 5, 6, 7, 0, 1, 2] 中间无序的地方 +- 中等: + * 单词接龙(亚马逊在半年内面试常考) + * 岛屿数量(近半年内,亚马逊在面试中考查此题达到 350 次) + * 扫雷游戏(亚马逊、Facebook 在半年内面试中考过) + * 跳跃游戏 (亚马逊、华为、Facebook 在半年内面试中考过) + * 搜索旋转排序数组(Facebook、字节跳动、亚马逊在半年内面试常考) + * 搜索二维矩阵(亚马逊、微软、Facebook 在半年内面试中考过) + * 寻找旋转排序数组中的最小值(亚马逊、微软、字节跳动在半年内面试中考过) +- 困难 + * 单词接龙 II (微软、亚马逊、Facebook 在半年内面试中考过) + * 跳跃游戏 II (亚马逊、华为、字节跳动在半年内面试中考过) #### 三、训练场练习 -- 递归相关: - * [指令计算器设计] - * [赛程表问题] -- 回溯相关: - * [单词转换] +- 二分法相关: + * 分数统计 +- DFS、BFS 相关: + * 二叉树纵向逆序遍历 + * 包裹容量问题 + * IP 还原问题 + * 任务处理问题 + * 追赶朋友 +- 贪心相关: + * 饥饿的老鼠 #### 四、心得及小结 - 本周可以沉淀的代码 -详见学习笔记 - 本周学习心得 -递归、回溯有点难以理解,都是参考别人的实现 -#### 五、疑问汇总 \ No newline at end of file +#### 五、疑问汇总 diff --git a/Week_04/note/dfs_bfs.md b/Week_04/note/BfsDfs.md similarity index 100% rename from Week_04/note/dfs_bfs.md rename to Week_04/note/BfsDfs.md diff --git a/Week_04/note/BinarySearch.md b/Week_04/note/BinarySearch.md new file mode 100644 index 00000000..c37caee0 --- /dev/null +++ b/Week_04/note/BinarySearch.md @@ -0,0 +1 @@ +# 深度优先算法 diff --git a/Week_04/note/Greedy.md b/Week_04/note/Greedy.md new file mode 100644 index 00000000..911514a7 --- /dev/null +++ b/Week_04/note/Greedy.md @@ -0,0 +1,5 @@ +# 深度优先算法 + + + +贪心算法有很多经典的应用,比如霍夫曼编码(Huffman Coding)、Prim 和 Kruskal 最小生成树算法、还有 Dijkstra 单源最短路径算法。 \ No newline at end of file From cd20bb9ec3bf08b8c365a555861a9d9674b8241f Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 1 Mar 2021 00:45:12 +0800 Subject: [PATCH 47/58] update:week04 note --- README.md | 8 ++--- Week_04/README.md | 2 ++ Week_04/note/BfsDfs.md | 7 ++-- Week_04/note/BinarySearch.md | 67 +++++++++++++++++++++++++++++++++++- Week_04/note/Greedy.md | 27 +++++++++++++-- 5 files changed, 102 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index e37277ec..58167b3f 100644 --- a/README.md +++ b/README.md @@ -15,9 +15,9 @@ * 第二遍自己默写,比较国内优秀解法 * 第三遍看国际站,比较国际优秀解法 * 第四遍默写+总结,记录优秀的解法 - * 第五遍用时快速熟悉 + * 第五遍用时前快速熟悉 - 四步解题法 - * clarification 沟通题目 - * possible solutions --> optimal 找到一种最优的解法(时间空间复杂度分析,自顶向下+边界+图解) - * code 编码 + * clarification 沟通题目/审题/边界条件/输入输出 + * possible solutions --> 所有的解法都思考一遍,optimal找到一种最优的解法(时间空间复杂度分析,自顶向下+边界+图解) + * code 确认后,编码 * test cases 测试用例 diff --git a/Week_04/README.md b/Week_04/README.md index 0dadcae8..6e9ad803 100644 --- a/Week_04/README.md +++ b/Week_04/README.md @@ -42,3 +42,5 @@ #### 五、疑问汇总 +- 一些题目的时间复杂度分析不来 +- \ No newline at end of file diff --git a/Week_04/note/BfsDfs.md b/Week_04/note/BfsDfs.md index 8d18fe29..ecfb86da 100644 --- a/Week_04/note/BfsDfs.md +++ b/Week_04/note/BfsDfs.md @@ -1,4 +1,7 @@ -# 深度优先算法 +深度/广度优先算法知识总结 +--- + +- 深度优先算法 深度优先搜索用的是回溯思想,非常适合用递归实现。换种说法,深度优先搜索是借助栈来实现的。 @@ -13,7 +16,7 @@ void dfs(TreeNode root) { ``` -# 广度优先算法 +- 广度优先算法 广度优先搜索,通俗的理解就是,地毯式层层推进,从起始顶点开始,依次往外遍历。广度优先搜索需要借助队列来实现 diff --git a/Week_04/note/BinarySearch.md b/Week_04/note/BinarySearch.md index c37caee0..6bb9f8a2 100644 --- a/Week_04/note/BinarySearch.md +++ b/Week_04/note/BinarySearch.md @@ -1 +1,66 @@ -# 深度优先算法 +二分查找知识总结 +--- +- 二分查找的前提 + * 目标单数单调性(单调递增或者递减) + * 存在上下界(bounded) + * 能够通过索引/下标访问(index accessible),简单点说就是数组。 + +- 代码模板 + +三个容易出错的地方:循环退出条件、mid 的取值,low 和 high 的更新。 + +``` + // 循环实现 + public int binarySearch(int[] array, int target) + { + int left = 0, right = array.length - 1, mid; + while (left <= right) { + mid = (right - left) / 2 + left; + if (array[mid] == target) { + return mid; + } else if (array[mid] > target) { + right = mid - 1; + } else { + left = mid + 1; + } + } + return -1; + } +``` + +``` + +// 二分查找的递归实现 + public int bsearch(int[] a, int n, int val) { + return bsearchInternally(a, 0, n - 1, val); + } + + private int bsearchInternally(int[] a, int low, int high, int value) { + if (low > high) return -1; + + int mid = low + ((high - low) >> 1); + if (a[mid] == value) { + return mid; + } else if (a[mid] < value) { + return bsearchInternally(a, mid+1, high, value); + } else { + return bsearchInternally(a, low, mid-1, value); + } + } +``` +- 经验总结 + * 二分查找依赖的是顺序表结构,简单点说就是数组 + * 二分查找针对的是有序数据 + * 数据量太小不适合二分查找,顺序遍历就够了 + * 数据量太大也不适合二分查找,要用数组,就要用大量的连续空间 + +- 典型应用 + * 1000 万个整数数据(内存限制是 100MB,每个数据大小是 8 字节),快速判断某个整数是否出现在这 1000 万数据中。 + * 快速定位IP对应的省份地址 + * 查找第一个值等于给定值的元素 + * 查找最后一个值等于给定值的元素 + * 查找第一个大于等于给定值的元素 + * 查找最后一个小于等于给定值的元素 + +- 参考链接 + * [Fast InvSqrt() 扩展阅读](https://www.beyond3d.com/content/articles/8/) \ No newline at end of file diff --git a/Week_04/note/Greedy.md b/Week_04/note/Greedy.md index 911514a7..397a7b04 100644 --- a/Week_04/note/Greedy.md +++ b/Week_04/note/Greedy.md @@ -1,5 +1,28 @@ -# 深度优先算法 +贪心算法知识总结 +--- + - 概念 +贪心算法(英语:greedy algorithm),又称贪婪算法,是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。 + +贪心算法在有最优子结构的问题中尤为有效。最优子结构的意思是局部最优解能决定全局最优解。简单地说,问题能够分解成子问题来解决,子问题的最优解能递推到最终问题的最优解。 + +- 经验技巧 + +贪心算法理论消化不了,直接练习最好。 + +贪心算法的最难的一块是如何将要解决的问题抽象成贪心算法模型,只要这一步搞定之后,贪心算法的编码一般都很简单。 + +实现该算法的过程:
+从问题的某一初始解出发;while 能朝给定总目标前进一步 do,求出可行解的一个解元素
+最后,由所有解元素组合成问题的一个可行解。
+ +- 经典应用 + * 霍夫曼编码(Huffman Coding) + * Prim算法 + * Kruskal 最小生成树算法 + * Dijkstra 单源最短路径算法 + +- 参考资料 + * [贪心算法wiki](https://zh.wikipedia.org/wiki/%E8%B4%AA%E5%BF%83%E7%AE%97%E6%B3%95) -贪心算法有很多经典的应用,比如霍夫曼编码(Huffman Coding)、Prim 和 Kruskal 最小生成树算法、还有 Dijkstra 单源最短路径算法。 \ No newline at end of file From 3f64847084110eb7059d1393e21d742fef170429 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 2 Mar 2021 00:33:58 +0800 Subject: [PATCH 48/58] update:week04 homework --- Week_04/README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Week_04/README.md b/Week_04/README.md index 6e9ad803..08886db1 100644 --- a/Week_04/README.md +++ b/Week_04/README.md @@ -5,9 +5,9 @@ #### 二、本周作业 - 简单: - * 柠檬水找零(亚马逊在半年内面试中考过) + * [柠檬水找零(亚马逊在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/greedy/d_860/860.java) * 买卖股票的最佳时机 II (亚马逊、字节跳动、微软在半年内面试中考过) - * 分发饼干(亚马逊在半年内面试中考过) + * [分发饼干(亚马逊在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problem/greedy/d_455/[455]分发饼干.java) * 模拟行走机器人 * 使用二分查找,寻找一个半有序数组 [4, 5, 6, 7, 0, 1, 2] 中间无序的地方 - 中等: @@ -22,13 +22,13 @@ * 单词接龙 II (微软、亚马逊、Facebook 在半年内面试中考过) * 跳跃游戏 II (亚马逊、华为、字节跳动在半年内面试中考过) -#### 三、训练场练习 +#### 三、训练场练习f - 二分法相关: * 分数统计 - DFS、BFS 相关: * 二叉树纵向逆序遍历 * 包裹容量问题 - * IP 还原问题 + * IP还原问题 * 任务处理问题 * 追赶朋友 - 贪心相关: From e3538b94c581184596733f045602ea110dbf9ca3 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 2 Mar 2021 00:36:14 +0800 Subject: [PATCH 49/58] update:week04 note --- Week_04/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Week_04/README.md b/Week_04/README.md index 08886db1..6687b0aa 100644 --- a/Week_04/README.md +++ b/Week_04/README.md @@ -5,7 +5,7 @@ #### 二、本周作业 - 简单: - * [柠檬水找零(亚马逊在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/greedy/d_860/860.java) + * [柠檬水找零(亚马逊在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/greedy/d_860/[860]柠檬水找零.java) * 买卖股票的最佳时机 II (亚马逊、字节跳动、微软在半年内面试中考过) * [分发饼干(亚马逊在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/tree/main/java/src/main/java/com/xiaoboji/problem/greedy/d_455/[455]分发饼干.java) * 模拟行走机器人 From 5cd5a3de65ee7e1b0dd321d81d3aa1cb6489fed4 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 2 Mar 2021 00:40:38 +0800 Subject: [PATCH 50/58] update:week04 note --- Week_04/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Week_04/README.md b/Week_04/README.md index 6687b0aa..ca538a28 100644 --- a/Week_04/README.md +++ b/Week_04/README.md @@ -1,5 +1,5 @@ #### 一、学习笔记 -- [深度+广度优先遍历](https://github.com/xiaoboji/algorithm024/tree/main/Week_04/note/DfsBfs.md) +- [深度+广度优先遍历](https://github.com/xiaoboji/algorithm024/tree/main/Week_04/note/BfsDfs.md) - [贪心算法](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Greedy.md) - [二分查找](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/BinarySearch.md) #### 二、本周作业 From c85d7e4a9af5fb852ffc1e10b26820a813698fbf Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 2 Mar 2021 00:41:35 +0800 Subject: [PATCH 51/58] update:week04 note --- Week_04/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Week_04/README.md b/Week_04/README.md index ca538a28..a197c130 100644 --- a/Week_04/README.md +++ b/Week_04/README.md @@ -1,7 +1,7 @@ #### 一、学习笔记 - [深度+广度优先遍历](https://github.com/xiaoboji/algorithm024/tree/main/Week_04/note/BfsDfs.md) -- [贪心算法](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/Greedy.md) -- [二分查找](https://github.com/xiaoboji/algorithm024/tree/main/Week_03/note/BinarySearch.md) +- [贪心算法](https://github.com/xiaoboji/algorithm024/tree/main/Week_04/note/Greedy.md) +- [二分查找](https://github.com/xiaoboji/algorithm024/tree/main/Week_04/note/BinarySearch.md) #### 二、本周作业 - 简单: From cc4c6d5250c560fa2e447a591dcbb3363bb2bfd0 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 16 Mar 2021 23:04:02 +0800 Subject: [PATCH 52/58] add:week06 homework --- Week_06/README.md | 30 +++++++++++++++++++++++++++++- Week_06/note/DynamicProgramming.md | 2 ++ 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 Week_06/note/DynamicProgramming.md diff --git a/Week_06/README.md b/Week_06/README.md index 50de3041..6f8f4cc2 100644 --- a/Week_06/README.md +++ b/Week_06/README.md @@ -1 +1,29 @@ -学习笔记 \ No newline at end of file +#### 一、学习笔记 +- [动态规划](https://github.com/xiaoboji/algorithm024/tree/main/Week_06/note/DynamicProgramming.md) +#### 二、本周作业 +- 中等 + * 最小路径和(亚马逊、高盛集团、谷歌在半年内面试中考过) + * 解码方法(亚马逊、Facebook、字节跳动在半年内面试中考过) + * 最大正方形(华为、谷歌、字节跳动在半年内面试中考过) + * 任务调度器(Facebook 在半年内面试中常考) + * 回文子串(Facebook、苹果、字节跳动在半年内面试中考过) +- 困难 + * 最长有效括号(字节跳动、亚马逊、微软在半年内面试中考过) + * 编辑距离(字节跳动、亚马逊、谷歌在半年内面试中考过) + * 矩形区域不超过 K 的最大数值和(谷歌在半年内面试中考过) + * 青蛙过河(亚马逊、苹果、字节跳动在半年内面试中考过) + * 分割数组的最大值(谷歌、亚马逊、Facebook 在半年内面试中考过) + * 学生出勤记录 II (谷歌在半年内面试中考过) + * 最小覆盖子串(Facebook 在半年内面试中常考) + * 戳气球(亚马逊在半年内面试中考过) + +#### 三、心得及小结 + +- 本周可以沉淀的代码 + + +- 本周学习心得 + + +#### 四、疑问汇总 +- 一些题目的时间复杂度分析不来 \ No newline at end of file diff --git a/Week_06/note/DynamicProgramming.md b/Week_06/note/DynamicProgramming.md new file mode 100644 index 00000000..e5e1e5dc --- /dev/null +++ b/Week_06/note/DynamicProgramming.md @@ -0,0 +1,2 @@ +动态规划学习总结 +--- From 66906b9fedfd2acadea251ad5577ebabed18affe Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 16 Mar 2021 23:49:35 +0800 Subject: [PATCH 53/58] add:week06 homework --- Week_06/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Week_06/README.md b/Week_06/README.md index 6f8f4cc2..cf3618a2 100644 --- a/Week_06/README.md +++ b/Week_06/README.md @@ -2,9 +2,9 @@ - [动态规划](https://github.com/xiaoboji/algorithm024/tree/main/Week_06/note/DynamicProgramming.md) #### 二、本周作业 - 中等 - * 最小路径和(亚马逊、高盛集团、谷歌在半年内面试中考过) + * [最小路径和(亚马逊、高盛集团、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/dynamic_programming/[64]最小路径和.java) * 解码方法(亚马逊、Facebook、字节跳动在半年内面试中考过) - * 最大正方形(华为、谷歌、字节跳动在半年内面试中考过) + * [最大正方形(华为、谷歌、字节跳动在半年内面试中考过)]((https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/dynamic_programming/[221]最大正方形.java)) * 任务调度器(Facebook 在半年内面试中常考) * 回文子串(Facebook、苹果、字节跳动在半年内面试中考过) - 困难 From 52b4a235c73c6cfdf536af144e2bffb056739919 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Tue, 16 Mar 2021 23:50:25 +0800 Subject: [PATCH 54/58] add:week06 homework --- Week_06/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Week_06/README.md b/Week_06/README.md index cf3618a2..af23eb0a 100644 --- a/Week_06/README.md +++ b/Week_06/README.md @@ -4,7 +4,7 @@ - 中等 * [最小路径和(亚马逊、高盛集团、谷歌在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/dynamic_programming/[64]最小路径和.java) * 解码方法(亚马逊、Facebook、字节跳动在半年内面试中考过) - * [最大正方形(华为、谷歌、字节跳动在半年内面试中考过)]((https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/dynamic_programming/[221]最大正方形.java)) + * [最大正方形(华为、谷歌、字节跳动在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/dynamic_programming/[221]最大正方形.java) * 任务调度器(Facebook 在半年内面试中常考) * 回文子串(Facebook、苹果、字节跳动在半年内面试中考过) - 困难 From defc41b90e249553ca3d63a69158fd85ca528e69 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Mon, 29 Mar 2021 00:09:08 +0800 Subject: [PATCH 55/58] add:week08 homework --- Week_08/README.md | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/Week_08/README.md b/Week_08/README.md index 50de3041..76c39e89 100644 --- a/Week_08/README.md +++ b/Week_08/README.md @@ -1 +1,28 @@ -学习笔记 \ No newline at end of file +#### 一、学习笔记 +- [红黑树与AVL树](https://github.com/xiaoboji/algorithm024/tree/main/Week_06/note/DynamicProgramming.md) +- [位运算](https://github.com/xiaoboji/algorithm024/tree/main/Week_06/note/DynamicProgramming.md) +#### 二、本周作业 +- 简单 + * [位 1 的个数(Facebook、苹果在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/bit_manipulation/191.md) + * [2 的幂(谷歌、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/bit_manipulation/231.md) + * 颠倒二进制位(苹果在半年内面试中考过) +- 中等 + * 实现 Trie (前缀树) (亚马逊、微软、谷歌在半年内面试中考过) + * 省份数量(亚马逊、Facebook、字节跳动在半年内面试中考过) + * 岛屿数量(近半年内,亚马逊在面试中考查此题达到 361 次) + * 被围绕的区域(亚马逊、eBay、谷歌在半年内面试中考过) +- 困难 + * 单词搜索 II (亚马逊、微软、苹果在半年内面试中考过) + * N 皇后(字节跳动、亚马逊、百度在半年内面试中考过) + * N 皇后 II (亚马逊在半年内面试中考过) + +#### 三、心得及小结 + +- 本周可以沉淀的代码 + + +- 本周学习心得 + + +#### 四、疑问汇总 +- 一些题目的时间复杂度分析不来 \ No newline at end of file From ed48abd2ed2c267da7be4d3e43f17442282aa37b Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 11 Apr 2021 23:01:19 +0800 Subject: [PATCH 56/58] add: week10 homework --- .../README.md" | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 "Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README.md" diff --git "a/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README.md" "b/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README.md" new file mode 100644 index 00000000..8692243a --- /dev/null +++ "b/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README.md" @@ -0,0 +1,51 @@ +极客大学「算法训练营-第24期」学习总结 +--- +## 学习内容 +- 知识内容 + * 数组 + * 链表 + * 跳表 + * 栈 + * 队列 + * 哈希、映射、集合 + * 树、二叉树、二叉搜索树 + * 堆和堆排序 + * 图 + * 递归 + * 分治 + * 回溯 + * 深度+广度优先遍历 + * 贪心算法 + * 二分查找 + * 动态规划 + * Trie树 + * 红黑树 + * AVL树 + * 位运算 + * 布隆过滤器 + * LRU缓存 + * 排序算法 + * 字符串算法 +- 五毒神掌,五遍刷题法,强调练习算法题要过遍数,算法题不仅是做一遍通过而已,而是要通过刻意练习达到对算法熟练的效果。 + * 五分钟没思路,直接看优秀题解 + * 第一遍可以参考优秀答案 + * 第二遍自己默写,比较国内优秀解法 + * 第三遍看国际站,比较国际优秀解法 + * 第四遍默写+总结,记录优秀的解法 + * 第五遍用时前快速熟悉 +- 四步解题法 + * clarification 沟通题目/审题/边界条件/输入输出 + * possible solutions --> 所有的解法都思考一遍,optimal找到一种最优的解法(时间空间复杂度分析,自顶向下+边界+图解) + * code 确认后,编码 + * test cases 测试用例 + +## 学习收获 + +- 对整个的知识体系结构有了比较清晰的认识 +- 中期之前比较认真,中期之后投入就比较少了,有点不好意思 +- 核心的核心,不懂就看,坚持重复 +- 同步学习一些java的源码 +- 配合争哥的课程,对理论理解比较好 + + + From 1b70d22f1caf370bb578bcb7685fa8fb05c7be50 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 11 Apr 2021 23:05:58 +0800 Subject: [PATCH 57/58] add: week10 homework --- README.md | 66 ++++++++++++----- .../README.md" | 71 +++++++------------ 2 files changed, 71 insertions(+), 66 deletions(-) diff --git a/README.md b/README.md index 58167b3f..8692243a 100644 --- a/README.md +++ b/README.md @@ -1,23 +1,51 @@ -# 极客大学「算法训练营-第24期」 +极客大学「算法训练营-第24期」学习总结 +--- +## 学习内容 +- 知识内容 + * 数组 + * 链表 + * 跳表 + * 栈 + * 队列 + * 哈希、映射、集合 + * 树、二叉树、二叉搜索树 + * 堆和堆排序 + * 图 + * 递归 + * 分治 + * 回溯 + * 深度+广度优先遍历 + * 贪心算法 + * 二分查找 + * 动态规划 + * Trie树 + * 红黑树 + * AVL树 + * 位运算 + * 布隆过滤器 + * LRU缓存 + * 排序算法 + * 字符串算法 +- 五毒神掌,五遍刷题法,强调练习算法题要过遍数,算法题不仅是做一遍通过而已,而是要通过刻意练习达到对算法熟练的效果。 + * 五分钟没思路,直接看优秀题解 + * 第一遍可以参考优秀答案 + * 第二遍自己默写,比较国内优秀解法 + * 第三遍看国际站,比较国际优秀解法 + * 第四遍默写+总结,记录优秀的解法 + * 第五遍用时前快速熟悉 +- 四步解题法 + * clarification 沟通题目/审题/边界条件/输入输出 + * possible solutions --> 所有的解法都思考一遍,optimal找到一种最优的解法(时间空间复杂度分析,自顶向下+边界+图解) + * code 确认后,编码 + * test cases 测试用例 +## 学习收获 +- 对整个的知识体系结构有了比较清晰的认识 +- 中期之前比较认真,中期之后投入就比较少了,有点不好意思 +- 核心的核心,不懂就看,坚持重复 +- 同步学习一些java的源码 +- 配合争哥的课程,对理论理解比较好 + -学习记录 -- [Week01-数组、链表、跳表、栈、队列](https://github.com/xiaoboji/algorithm024/tree/main/Week_01) -- [Week02-哈希、树、堆、图](https://github.com/xiaoboji/algorithm024/tree/main/Week_02) -- [Week03-递归、分治、回溯](https://github.com/xiaoboji/algorithm024/tree/main/Week_03) -- [Week04-深度+广度优先遍历、贪心算法和二分查找](https://github.com/xiaoboji/algorithm024/tree/main/Week_04) -学习要点 -- 五毒神掌,五遍刷题法,强调练习算法题要过遍数,算法题不仅是做一遍通过而已,而是要通过刻意练习达到对算法熟练的效果。 - * 五分钟没思路,直接看优秀题解 - * 第一遍可以参考优秀答案 - * 第二遍自己默写,比较国内优秀解法 - * 第三遍看国际站,比较国际优秀解法 - * 第四遍默写+总结,记录优秀的解法 - * 第五遍用时前快速熟悉 -- 四步解题法 - * clarification 沟通题目/审题/边界条件/输入输出 - * possible solutions --> 所有的解法都思考一遍,optimal找到一种最优的解法(时间空间复杂度分析,自顶向下+边界+图解) - * code 确认后,编码 - * test cases 测试用例 diff --git "a/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README.md" "b/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README.md" index 8692243a..ec0cd40e 100644 --- "a/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README.md" +++ "b/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README.md" @@ -1,51 +1,28 @@ -极客大学「算法训练营-第24期」学习总结 ---- -## 学习内容 -- 知识内容 - * 数组 - * 链表 - * 跳表 - * 栈 - * 队列 - * 哈希、映射、集合 - * 树、二叉树、二叉搜索树 - * 堆和堆排序 - * 图 - * 递归 - * 分治 - * 回溯 - * 深度+广度优先遍历 - * 贪心算法 - * 二分查找 - * 动态规划 - * Trie树 - * 红黑树 - * AVL树 - * 位运算 - * 布隆过滤器 - * LRU缓存 - * 排序算法 - * 字符串算法 -- 五毒神掌,五遍刷题法,强调练习算法题要过遍数,算法题不仅是做一遍通过而已,而是要通过刻意练习达到对算法熟练的效果。 - * 五分钟没思路,直接看优秀题解 - * 第一遍可以参考优秀答案 - * 第二遍自己默写,比较国内优秀解法 - * 第三遍看国际站,比较国际优秀解法 - * 第四遍默写+总结,记录优秀的解法 - * 第五遍用时前快速熟悉 -- 四步解题法 - * clarification 沟通题目/审题/边界条件/输入输出 - * possible solutions --> 所有的解法都思考一遍,optimal找到一种最优的解法(时间空间复杂度分析,自顶向下+边界+图解) - * code 确认后,编码 - * test cases 测试用例 +#### 一、学习笔记 +- [红黑树与AVL树](https://github.com/xiaoboji/algorithm024/tree/main/Week_06/note/DynamicProgramming.md) +- [位运算](https://github.com/xiaoboji/algorithm024/tree/main/Week_06/note/DynamicProgramming.md) +#### 二、本周作业 +- 简单 + * [位 1 的个数(Facebook、苹果在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/bit_manipulation/191.md) + * [2 的幂(谷歌、亚马逊、苹果在半年内面试中考过)](https://github.com/xiaoboji/j-leetcode/blob/main/java/src/main/java/com/xiaoboji/problem/bit_manipulation/231.md) + * 颠倒二进制位(苹果在半年内面试中考过) +- 中等 + * 实现 Trie (前缀树) (亚马逊、微软、谷歌在半年内面试中考过) + * 省份数量(亚马逊、Facebook、字节跳动在半年内面试中考过) + * 岛屿数量(近半年内,亚马逊在面试中考查此题达到 361 次) + * 被围绕的区域(亚马逊、eBay、谷歌在半年内面试中考过) +- 困难 + * 单词搜索 II (亚马逊、微软、苹果在半年内面试中考过) + * N 皇后(字节跳动、亚马逊、百度在半年内面试中考过) + * N 皇后 II (亚马逊在半年内面试中考过) -## 学习收获 +#### 三、心得及小结 -- 对整个的知识体系结构有了比较清晰的认识 -- 中期之前比较认真,中期之后投入就比较少了,有点不好意思 -- 核心的核心,不懂就看,坚持重复 -- 同步学习一些java的源码 -- 配合争哥的课程,对理论理解比较好 - +- 本周可以沉淀的代码 +- 本周学习心得 + + +#### 四、疑问汇总 +- 一些题目的时间复杂度分析不来 \ No newline at end of file From 05397fe1ce7bc716811f361987d1c59f242d9bf4 Mon Sep 17 00:00:00 2001 From: xiaoboji Date: Sun, 11 Apr 2021 23:10:19 +0800 Subject: [PATCH 58/58] add: week10 homework --- README.md | 8 --- .../README_SUMMARY.md" | 51 +++++++++++++++++++ 2 files changed, 51 insertions(+), 8 deletions(-) create mode 100644 "Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README_SUMMARY.md" diff --git a/README.md b/README.md index 8692243a..828e69d2 100644 --- a/README.md +++ b/README.md @@ -38,14 +38,6 @@ * possible solutions --> 所有的解法都思考一遍,optimal找到一种最优的解法(时间空间复杂度分析,自顶向下+边界+图解) * code 确认后,编码 * test cases 测试用例 - -## 学习收获 - -- 对整个的知识体系结构有了比较清晰的认识 -- 中期之前比较认真,中期之后投入就比较少了,有点不好意思 -- 核心的核心,不懂就看,坚持重复 -- 同步学习一些java的源码 -- 配合争哥的课程,对理论理解比较好 diff --git "a/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README_SUMMARY.md" "b/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README_SUMMARY.md" new file mode 100644 index 00000000..8692243a --- /dev/null +++ "b/Week_10 \346\257\225\344\270\232\346\200\273\347\273\223/README_SUMMARY.md" @@ -0,0 +1,51 @@ +极客大学「算法训练营-第24期」学习总结 +--- +## 学习内容 +- 知识内容 + * 数组 + * 链表 + * 跳表 + * 栈 + * 队列 + * 哈希、映射、集合 + * 树、二叉树、二叉搜索树 + * 堆和堆排序 + * 图 + * 递归 + * 分治 + * 回溯 + * 深度+广度优先遍历 + * 贪心算法 + * 二分查找 + * 动态规划 + * Trie树 + * 红黑树 + * AVL树 + * 位运算 + * 布隆过滤器 + * LRU缓存 + * 排序算法 + * 字符串算法 +- 五毒神掌,五遍刷题法,强调练习算法题要过遍数,算法题不仅是做一遍通过而已,而是要通过刻意练习达到对算法熟练的效果。 + * 五分钟没思路,直接看优秀题解 + * 第一遍可以参考优秀答案 + * 第二遍自己默写,比较国内优秀解法 + * 第三遍看国际站,比较国际优秀解法 + * 第四遍默写+总结,记录优秀的解法 + * 第五遍用时前快速熟悉 +- 四步解题法 + * clarification 沟通题目/审题/边界条件/输入输出 + * possible solutions --> 所有的解法都思考一遍,optimal找到一种最优的解法(时间空间复杂度分析,自顶向下+边界+图解) + * code 确认后,编码 + * test cases 测试用例 + +## 学习收获 + +- 对整个的知识体系结构有了比较清晰的认识 +- 中期之前比较认真,中期之后投入就比较少了,有点不好意思 +- 核心的核心,不懂就看,坚持重复 +- 同步学习一些java的源码 +- 配合争哥的课程,对理论理解比较好 + + +