✏️ 更新习题集文档

This commit is contained in:
康建伟
2020-03-25 12:50:31 +08:00
parent 6449fae19f
commit 8baea43314
3 changed files with 29 additions and 2 deletions

View File

@@ -285,8 +285,11 @@ int Time (int n)
#### 2<sup>100</sup>(3/2)<sup>n</sup>(2/3)<sup>n</sup>(4/3)<sup>n</sup>n<sup>n</sup>n<sup>3/2</sup>n<sup>2/3</sup>√nnnlog<sub>2</sub>nn/log<sub>2</sub>nlog<sup>2</sup><sub>2</sub>nlog<sub>2</sub>(log<sub>2</sub>n)nlog<sub>2</sub>nn<sup>log<sub>2</sub>n</sup>
> 各函数的排列次序如下:
![1.10.1](_v_images/20181125002335576_8701.png)
![1.10.2](_v_images/20181125002344865_51.png)
>
> ![1.10.1](_v_images/20181125002335576_8701.png)
> ![1.10.2](_v_images/20181125002344865_51.png)
> 习题集中给出的第12个函数为n/logn2这应当是笔误实际为n/log2n
### 1.11 已知有实现同一功能的两个算法其时间复杂度分别为O(2<sup>n</sup>)和O(n<sup>10</sup>)假设现实计算机可连续运算的时间为10<sup>7</sup>秒100多天又每秒可执行基本操作根据这些操作来估算算法时间复杂度10<sup>5</sup>次。试问在此条件下这两个算法可解问题的规模即n值的范围各为多少哪个算法更适宜请说明理由。

View File

@@ -372,30 +372,42 @@ Status DeleteAndInsertSub (LinkedList la, LinkedList lb, int i, int j, int len)
>[Question-2.23-main.c](▼习题测试文档-02/Question-2.23-main.c)
> 关键词:单链表
### 2.24 假设有两个按元素值递增有序排列的线性表A和B均以单链表作存储结构请编写算法将A表和B表归并成一个按元素值递减有序即非递增有序允许表中含有值相同的元素排列的线性表C并要求利用原表即A表和B表的结点空间构造C表。
>[Question-2.24-main.c](▼习题测试文档-02/Question-2.24-main.c)
> 关键词:递增单链表
### 2.25 假设以两个元素依值递增有序排列的线性表A和B分别表示两个集合即同一表中的元素值各不相同现要求另辟空间构成一个线性表C其元素为A和B中元素的交集且表C中的元素也依值递增有序排列。试对顺序表编写求C的算法。
>[Question-2.25-main.c](▼习题测试文档-02/Question-2.25-main.c)
> 关键词:递增无重复顺序表
### 2.26 要求同2.25题。试对单链表编写求C的算法。
>[Question-2.26-main.c](▼习题测试文档-02/Question-2.26-main.c)
> 关键词:递增无重复单链表
### 2.27 对2.25题的条件作以下修改对顺序表重新编写求得表C的算法。
###### 1假设在同一表A或B中可能存在值相同的元素但要求新生成的表C中的元素值各不相同
###### 2利用A表空间存放表C。
>[Question-2.27-main.c](▼习题测试文档-02/Question-2.27-main.c)
> 关键词:递增有重复顺序表
### 2.28 对2.25题的条件作以下两点修改对单链表重新编写求得表C的算法。
###### 1假设在同一表A或B中可能存在值相同的元素但要求新生成的表C中的元素值各不相同。
###### 2利用原表A表或B表中的结点构造表C并释放A表中的无用结点空间。
>[Question-2.28-main.c](▼习题测试文档-02/Question-2.28-main.c)
> 关键词:递增有重复单链表,释放无效结点
### 2.29 已知AB和C为三个递增有序的线性表现要求对A表作如下操作删去那些既在B表中出现又在C表中出现的元素。试对顺序表编写实现上述操作的算法并分析你的算法的时间复杂度注意同一表中各元素值可能相同
>[Question-2.29-main.c](▼习题测试文档-02/Question-2.29-main.c)

View File

@@ -362,30 +362,42 @@ Status DeleteAndInsertSub (LinkedList la, LinkedList lb, int i, int j, int len)
###### 或者&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C=(a1, b1, ..., an, bn, an+1, ..., am) 当m>n时。
### 线性表AB和C均以单链表作存储结构且C表利用A表和B表中的结点空间构成。注意单链表的长度值m和n均未显式存储。
> 关键词:单链表
----------
### 2.24 假设有两个按元素值递增有序排列的线性表A和B均以单链表作存储结构请编写算法将A表和B表归并成一个按元素值递减有序即非递增有序允许表中含有值相同的元素排列的线性表C并要求利用原表即A表和B表的结点空间构造C表。
> 关键词:递增单链表
----------
### 2.25 假设以两个元素依值递增有序排列的线性表A和B分别表示两个集合即同一表中的元素值各不相同现要求另辟空间构成一个线性表C其元素为A和B中元素的交集且表C中的元素也依值递增有序排列。试对顺序表编写求C的算法。
> 关键词:递增无重复顺序表
----------
### 2.26 要求同2.25题。试对单链表编写求C的算法。
> 关键词:递增无重复单链表
----------
### 2.27 对2.25题的条件作以下修改对顺序表重新编写求得表C的算法。
###### 1假设在同一表A或B中可能存在值相同的元素但要求新生成的表C中的元素值各不相同
###### 2利用A表空间存放表C。
> 关键词:递增有重复顺序表
----------
### 2.28 对2.25题的条件作以下两点修改对单链表重新编写求得表C的算法。
###### 1假设在同一表A或B中可能存在值相同的元素但要求新生成的表C中的元素值各不相同。
###### 2利用原表A表或B表中的结点构造表C并释放A表中的无用结点空间。
> 关键词:递增有重复单链表,释放无效结点
----------
### 2.29 已知AB和C为三个递增有序的线性表现要求对A表作如下操作删去那些既在B表中出现又在C表中出现的元素。试对顺序表编写实现上述操作的算法并分析你的算法的时间复杂度注意同一表中各元素值可能相同