 Hello 算法 1.0.0b1 C++版. . . . . . . . . . . . . . . . . 42 4. 数组与链表 44 4.1. 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 4.2. 链表 . . . . . . . . . . . . . . . . . . . . . . 复杂度分析:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算 方法、常见类型、示例等。 ‧ 数据结构:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、 散列表、树、堆、图等数据结构,内容包括定义、优劣势、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:查找算法、排序算法、搜索与回溯、动态规划、分治算法,内容包括定义、使用场景、优劣势、时 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构的设计是一个充满权衡的过程,这意味着如果获得某方面的优势,则往往需要在另一方面做出妥协。 例如,链表相对于数组,数据添加删除操作更加方便,但牺牲了数据的访问速度;图相对于链表,提供了更多 的逻辑信息,但需要占用更多的内存空间。 1.2.3. 数据结构与算法的关系 「数据结构」与「算法」是高度相关、紧密嵌合的,体现在: ‧ 数据0 码力 | 187 页 | 14.71 MB | 1 年前3 Hello 算法 1.0.0b1 C++版. . . . . . . . . . . . . . . . . 42 4. 数组与链表 44 4.1. 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 4.2. 链表 . . . . . . . . . . . . . . . . . . . . . . 复杂度分析:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算 方法、常见类型、示例等。 ‧ 数据结构:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、 散列表、树、堆、图等数据结构,内容包括定义、优劣势、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:查找算法、排序算法、搜索与回溯、动态规划、分治算法,内容包括定义、使用场景、优劣势、时 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构的设计是一个充满权衡的过程,这意味着如果获得某方面的优势,则往往需要在另一方面做出妥协。 例如,链表相对于数组,数据添加删除操作更加方便,但牺牲了数据的访问速度;图相对于链表,提供了更多 的逻辑信息,但需要占用更多的内存空间。 1.2.3. 数据结构与算法的关系 「数据结构」与「算法」是高度相关、紧密嵌合的,体现在: ‧ 数据0 码力 | 187 页 | 14.71 MB | 1 年前3
 Hello 算法 1.0.0b2 C++版. . . . . . . . . . . . . . . . . 42 4. 数组与链表 44 4.1. 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 4.2. 链表 . . . . . . . . . . . . . . . . . . . . . . 复杂度分析:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算 方法、常见类型、示例等。 ‧ 数据结构:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、 散列表、树、堆、图等数据结构,内容包括定义、优劣势、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:查找算法、排序算法、搜索与回溯、动态规划、分治算法,内容包括定义、使用场景、优劣势、时 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构的设计是一个充满权衡的过程,这意味着如果获得某方面的优势,则往往需要在另一方面做出妥协。 例如,链表相对于数组,数据添加删除操作更加方便,但牺牲了数据的访问速度;图相对于链表,提供了更多 的逻辑信息,但需要占用更多的内存空间。 1.2.3. 数据结构与算法的关系 「数据结构」与「算法」是高度相关、紧密嵌合的,体现在: ‧ 数据0 码力 | 197 页 | 15.72 MB | 1 年前3 Hello 算法 1.0.0b2 C++版. . . . . . . . . . . . . . . . . 42 4. 数组与链表 44 4.1. 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 4.2. 链表 . . . . . . . . . . . . . . . . . . . . . . 复杂度分析:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算 方法、常见类型、示例等。 ‧ 数据结构:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、 散列表、树、堆、图等数据结构,内容包括定义、优劣势、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:查找算法、排序算法、搜索与回溯、动态规划、分治算法,内容包括定义、使用场景、优劣势、时 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构的设计是一个充满权衡的过程,这意味着如果获得某方面的优势,则往往需要在另一方面做出妥协。 例如,链表相对于数组,数据添加删除操作更加方便,但牺牲了数据的访问速度;图相对于链表,提供了更多 的逻辑信息,但需要占用更多的内存空间。 1.2.3. 数据结构与算法的关系 「数据结构」与「算法」是高度相关、紧密嵌合的,体现在: ‧ 数据0 码力 | 197 页 | 15.72 MB | 1 年前3
 Hello 算法 1.1.0 C++ 版. . . . . . . . . . . . . . . . 64 第 4 章 数组与链表 66 4.1 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.2 链表 . . . . . . . . . . . . . . . . . . . . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。0 码力 | 379 页 | 18.47 MB | 1 年前3 Hello 算法 1.1.0 C++ 版. . . . . . . . . . . . . . . . 64 第 4 章 数组与链表 66 4.1 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.2 链表 . . . . . . . . . . . . . . . . . . . . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。0 码力 | 379 页 | 18.47 MB | 1 年前3
 Hello 算法 1.0.0 C++版. . . . . . . . . . . . . . . . 64 第 4 章 数组与链表 66 4.1 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.2 链表 . . . . . . . . . . . . . . . . . . . . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。0 码力 | 378 页 | 17.59 MB | 1 年前3 Hello 算法 1.0.0 C++版. . . . . . . . . . . . . . . . 64 第 4 章 数组与链表 66 4.1 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.2 链表 . . . . . . . . . . . . . . . . . . . . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。0 码力 | 378 页 | 17.59 MB | 1 年前3
 Hello 算法 1.0.0b4 C++版. . . . . . . . . . . . . . . . . 48 4. 数组与链表 50 4.1. 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.2. 链表 . . . . . . . . . . . . . . . . . . . . . . 本书主要内容包括: ‧ 复杂度分析:数据结构和算法的评价维度,算法效率的评估方法。时间复杂度、空间复杂度的推算方 法、常见类型、示例等。 ‧ 数据结构:基本数据类型,数据结构的分类方法。数组、链表、栈、队列、散列表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤、 ‧ 提供简洁的数据表示和逻辑信息,以便使得算法高效运行。 数据结构设计是一个充满权衡的过程,这意味着要在某方面取得优势,往往需要在另一方面作出妥协。例如, 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度;图相较于链表,提供了更丰 富的逻辑信息,但需要占用更大的内存空间。 1.2.3. 数据结构与算法的关系 「数据结构」与「算法」高度相关且紧密结合,具体表现在: ‧0 码力 | 343 页 | 27.39 MB | 1 年前3 Hello 算法 1.0.0b4 C++版. . . . . . . . . . . . . . . . . 48 4. 数组与链表 50 4.1. 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.2. 链表 . . . . . . . . . . . . . . . . . . . . . . 本书主要内容包括: ‧ 复杂度分析:数据结构和算法的评价维度,算法效率的评估方法。时间复杂度、空间复杂度的推算方 法、常见类型、示例等。 ‧ 数据结构:基本数据类型,数据结构的分类方法。数组、链表、栈、队列、散列表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤、 ‧ 提供简洁的数据表示和逻辑信息,以便使得算法高效运行。 数据结构设计是一个充满权衡的过程,这意味着要在某方面取得优势,往往需要在另一方面作出妥协。例如, 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度;图相较于链表,提供了更丰 富的逻辑信息,但需要占用更大的内存空间。 1.2.3. 数据结构与算法的关系 「数据结构」与「算法」高度相关且紧密结合,具体表现在: ‧0 码力 | 343 页 | 27.39 MB | 1 年前3
 Hello 算法 1.2.0 简体中文 C++ 版. . . . . . . . . . . . . . . . 64 第 4 章 数组与链表 66 4.1 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.2 链表 . . . . . . . . . . . . . . . . . . . . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。0 码力 | 379 页 | 18.48 MB | 10 月前3 Hello 算法 1.2.0 简体中文 C++ 版. . . . . . . . . . . . . . . . 64 第 4 章 数组与链表 66 4.1 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.2 链表 . . . . . . . . . . . . . . . . . . . . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。0 码力 | 379 页 | 18.48 MB | 10 月前3
 Hello 算法 1.0.0b5 C++版. . . . . . . . . . . . . . . . 62 第 4 章 数组与链表 63 4.1 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 4.2 链表 . . . . . . . . . . . . . . . . . . . . . . . 本书主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度、空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型,数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤、 提供简洁的数据表示和逻辑信息,以便使得算法高效运行。 数据结构设计是一个充满权衡的过程。如果想要在某方面取得提升,往往需要在另一方面作出妥协。下面举 两个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现以下三个方面。0 码力 | 377 页 | 30.69 MB | 1 年前3 Hello 算法 1.0.0b5 C++版. . . . . . . . . . . . . . . . 62 第 4 章 数组与链表 63 4.1 数组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 4.2 链表 . . . . . . . . . . . . . . . . . . . . . . . 本书主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度、空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型,数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤、 提供简洁的数据表示和逻辑信息,以便使得算法高效运行。 数据结构设计是一个充满权衡的过程。如果想要在某方面取得提升,往往需要在另一方面作出妥协。下面举 两个例子。 ‧ 链表相较于数组,在数据添加和删除操作上更加便捷,但牺牲了数据访问速度。 ‧ 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现以下三个方面。0 码力 | 377 页 | 30.69 MB | 1 年前3
 现代C++ 教程:高速上手C++11/14/17/20是一个列表容器,使用方法和 std::list 基本类似,因此我们就不花费篇幅进 行介绍了。 需要知道的是,和 std::list 的双向链表的实现不同,std::forward_list 使用单向链表进行实现, 提供了 O(1) 复杂度的元素插入,不支持快速随机访问(这也是链表的特点),也是标准库容器中唯一一 个不提供 size() 方法的容器。当不需要双向迭代时,具有比 std::list 更高的空间利用率。0 码力 | 83 页 | 2.42 MB | 1 年前3 现代C++ 教程:高速上手C++11/14/17/20是一个列表容器,使用方法和 std::list 基本类似,因此我们就不花费篇幅进 行介绍了。 需要知道的是,和 std::list 的双向链表的实现不同,std::forward_list 使用单向链表进行实现, 提供了 O(1) 复杂度的元素插入,不支持快速随机访问(这也是链表的特点),也是标准库容器中唯一一 个不提供 size() 方法的容器。当不需要双向迭代时,具有比 std::list 更高的空间利用率。0 码力 | 83 页 | 2.42 MB | 1 年前3
 C++高性能并行编程与优化 -  课件 - 02 现代 C++ 入门:RAII 内存管理来管理,省的每个类实 现一遍原子引用计数器。 管理资源的类, 请删除他的拷贝 是数据结构:如果可以,定义拷贝和移动 • 这个类是你精心设计的数据结构,包括我们刚 刚发明的 Vector ,还有链表,红黑树等。如 果这些数据结构是可以支持拷贝的(比如 Vector 就可以),你可能需要自己一个个定义。 如果不支持,那就删除( = delete )。 函数参数:如何避免不必要的拷贝 • 回家作业! • 已经发布到: https://github.com/parallel101/hw02 • 仓库的 README.md 里有详细的作业要求和说明。请按要求修改其中的代码,使得双向 链表类 List 的拷贝构造函数能正常工作,且内存能够安全释放。 • 通过 pull request 提交你的作业,这样我可以通过 diff 页面清楚地看到你的改动。 • 什么事 pull request0 码力 | 96 页 | 16.28 MB | 1 年前3 C++高性能并行编程与优化 -  课件 - 02 现代 C++ 入门:RAII 内存管理来管理,省的每个类实 现一遍原子引用计数器。 管理资源的类, 请删除他的拷贝 是数据结构:如果可以,定义拷贝和移动 • 这个类是你精心设计的数据结构,包括我们刚 刚发明的 Vector ,还有链表,红黑树等。如 果这些数据结构是可以支持拷贝的(比如 Vector 就可以),你可能需要自己一个个定义。 如果不支持,那就删除( = delete )。 函数参数:如何避免不必要的拷贝 • 回家作业! • 已经发布到: https://github.com/parallel101/hw02 • 仓库的 README.md 里有详细的作业要求和说明。请按要求修改其中的代码,使得双向 链表类 List 的拷贝构造函数能正常工作,且内存能够安全释放。 • 通过 pull request 提交你的作业,这样我可以通过 diff 页面清楚地看到你的改动。 • 什么事 pull request0 码力 | 96 页 | 16.28 MB | 1 年前3
 C++高性能并行编程与优化 -  课件 - 13 C++ STL 容器全解之 vectorlist C++高性能并行编程与优化 -  课件 - 13 C++ STL 容器全解之 vectorlist- ::iterator 是一个特殊定义过的 类型,其具有 != 和 ++ 以及 * 这些运算符的 重载。所以用起来就像普通的指针一样。而这 些运算符重载,却会把 ++ 对应到 链表的 curr = curr->next 上。 • 这样一个用起来就像普通的指针,但内部却通 过运算符重载适配不同容器的特殊类,就是迭 代器 (iterator) ,迭代器是 STL 中容器和算法 0 码力 | 90 页 | 4.93 MB | 1 年前3
共 11 条
- 1
- 2













