 Hello 算法 1.1.0 Python版3 列表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4.4 内存与缓存 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 4.5 小结 . . . . . 序便可以访问内存中的数据。 图 3‑2 内存条、内存空间、内存地址 Tip 值得说明的是,将内存比作 Excel 表格是一个简化的类比,实际内存的工作机制比较复杂,涉及地址 空间、内存管理、缓存机制、虚拟内存和物理内存等概念。 内存是所有程序的共享资源,当某块内存被某个程序占用时,则无法被其他程序同时使用了。因此在数据结 构与算法的设计中,内存资源是一个重要的考虑因素。比如,算法所占用的内存峰值不应超过系统剩余空闲 优化数据结构的操作效率。 ‧ 空间效率高:数组为数据分配了连续的内存块,无须额外的结构开销。 ‧ 支持随机访问:数组允许在 ?(1) 时间内访问任何元素。 ‧ 缓存局部性:当访问数组元素时,计算机不仅会加载它,还会缓存其周围的其他数据,从而借助高速缓 存来提升后续操作的执行速度。 连续空间存储是一把双刃剑,其存在以下局限性。 ‧ 插入与删除效率低:当数组中元素较多时,插入与删除操作需要移动大量的元素。0 码力 | 364 页 | 18.42 MB | 1 年前3 Hello 算法 1.1.0 Python版3 列表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4.4 内存与缓存 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 4.5 小结 . . . . . 序便可以访问内存中的数据。 图 3‑2 内存条、内存空间、内存地址 Tip 值得说明的是,将内存比作 Excel 表格是一个简化的类比,实际内存的工作机制比较复杂,涉及地址 空间、内存管理、缓存机制、虚拟内存和物理内存等概念。 内存是所有程序的共享资源,当某块内存被某个程序占用时,则无法被其他程序同时使用了。因此在数据结 构与算法的设计中,内存资源是一个重要的考虑因素。比如,算法所占用的内存峰值不应超过系统剩余空闲 优化数据结构的操作效率。 ‧ 空间效率高:数组为数据分配了连续的内存块,无须额外的结构开销。 ‧ 支持随机访问:数组允许在 ?(1) 时间内访问任何元素。 ‧ 缓存局部性:当访问数组元素时,计算机不仅会加载它,还会缓存其周围的其他数据,从而借助高速缓 存来提升后续操作的执行速度。 连续空间存储是一把双刃剑,其存在以下局限性。 ‧ 插入与删除效率低:当数组中元素较多时,插入与删除操作需要移动大量的元素。0 码力 | 364 页 | 18.42 MB | 1 年前3
 Hello 算法 1.0.0 Python版3 列表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4.4 内存与缓存 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 4.5 小结 . . . . . ,程序便可以访问内存中的数据。 图 3‑2 内存条、内存空间、内存地址 � 值得说明的是,将内存比作 Excel 表格是一个简化的类比,实际内存的工作机制比较复杂,涉 及地址空间、内存管理、缓存机制、虚拟内存和物理内存等概念。 内存是所有程序的共享资源,当某块内存被某个程序占用时,则无法被其他程序同时使用了。因此在数据结 构与算法的设计中,内存资源是一个重要的考虑因素。比如,算法所占用的内存峰值不应超过系统剩余空闲 优化数据结构的操作效率。 ‧ 空间效率高:数组为数据分配了连续的内存块,无须额外的结构开销。 ‧ 支持随机访问:数组允许在 ?(1) 时间内访问任何元素。 ‧ 缓存局部性:当访问数组元素时,计算机不仅会加载它,还会缓存其周围的其他数据,从而借助高速缓 存来提升后续操作的执行速度。 连续空间存储是一把双刃剑,其存在以下局限性。 ‧ 插入与删除效率低:当数组中元素较多时,插入与删除操作需要移动大量的元素。0 码力 | 362 页 | 17.54 MB | 1 年前3 Hello 算法 1.0.0 Python版3 列表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4.4 内存与缓存 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 4.5 小结 . . . . . ,程序便可以访问内存中的数据。 图 3‑2 内存条、内存空间、内存地址 � 值得说明的是,将内存比作 Excel 表格是一个简化的类比,实际内存的工作机制比较复杂,涉 及地址空间、内存管理、缓存机制、虚拟内存和物理内存等概念。 内存是所有程序的共享资源,当某块内存被某个程序占用时,则无法被其他程序同时使用了。因此在数据结 构与算法的设计中,内存资源是一个重要的考虑因素。比如,算法所占用的内存峰值不应超过系统剩余空闲 优化数据结构的操作效率。 ‧ 空间效率高:数组为数据分配了连续的内存块,无须额外的结构开销。 ‧ 支持随机访问:数组允许在 ?(1) 时间内访问任何元素。 ‧ 缓存局部性:当访问数组元素时,计算机不仅会加载它,还会缓存其周围的其他数据,从而借助高速缓 存来提升后续操作的执行速度。 连续空间存储是一把双刃剑,其存在以下局限性。 ‧ 插入与删除效率低:当数组中元素较多时,插入与删除操作需要移动大量的元素。0 码力 | 362 页 | 17.54 MB | 1 年前3
 Hello 算法 1.2.0 简体中文 Python 版3 列表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4.4 内存与缓存 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 4.5 小结 . . . . . 序便可以访问内存中的数据。 图 3‑2 内存条、内存空间、内存地址 Tip 值得说明的是,将内存比作 Excel 表格是一个简化的类比,实际内存的工作机制比较复杂,涉及地址 空间、内存管理、缓存机制、虚拟内存和物理内存等概念。 内存是所有程序的共享资源,当某块内存被某个程序占用时,则通常无法被其他程序同时使用了。因此在数 据结构与算法的设计中,内存资源是一个重要的考虑因素。比如,算法所占用的内存峰值不应超过系统剩余 优化数据结构的操作效率。 ‧ 空间效率高:数组为数据分配了连续的内存块,无须额外的结构开销。 ‧ 支持随机访问:数组允许在 ?(1) 时间内访问任何元素。 ‧ 缓存局部性:当访问数组元素时,计算机不仅会加载它,还会缓存其周围的其他数据,从而借助高速缓 存来提升后续操作的执行速度。 连续空间存储是一把双刃剑,其存在以下局限性。 ‧ 插入与删除效率低:当数组中元素较多时,插入与删除操作需要移动大量的元素。0 码力 | 364 页 | 18.43 MB | 10 月前3 Hello 算法 1.2.0 简体中文 Python 版3 列表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4.4 内存与缓存 * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 4.5 小结 . . . . . 序便可以访问内存中的数据。 图 3‑2 内存条、内存空间、内存地址 Tip 值得说明的是,将内存比作 Excel 表格是一个简化的类比,实际内存的工作机制比较复杂,涉及地址 空间、内存管理、缓存机制、虚拟内存和物理内存等概念。 内存是所有程序的共享资源,当某块内存被某个程序占用时,则通常无法被其他程序同时使用了。因此在数 据结构与算法的设计中,内存资源是一个重要的考虑因素。比如,算法所占用的内存峰值不应超过系统剩余 优化数据结构的操作效率。 ‧ 空间效率高:数组为数据分配了连续的内存块,无须额外的结构开销。 ‧ 支持随机访问:数组允许在 ?(1) 时间内访问任何元素。 ‧ 缓存局部性:当访问数组元素时,计算机不仅会加载它,还会缓存其周围的其他数据,从而借助高速缓 存来提升后续操作的执行速度。 连续空间存储是一把双刃剑,其存在以下局限性。 ‧ 插入与删除效率低:当数组中元素较多时,插入与删除操作需要移动大量的元素。0 码力 | 364 页 | 18.43 MB | 10 月前3
 Python 标准库参考指南 3.9.20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 16.7 logging.config None,则将使 用sys.stdout。由于要打印的参数会被转换为文本字符串,因此print() 不能用于二进制模式 的文件对象。对于这些对象,应改用 file.write(...)。 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为真值,流会被强制刷新。 在 3.3 版更改: 增加了 flush 关键字参数。 class property(fget=None, fset=None string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可 以让程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使 用无需考虑编译的问题。 re.A re.ASCII 让 \w, \W, \b, \B, \d, \D, \s 和 \S 只匹配 ASCII,而不是 Unicode。这只对0 码力 | 2015 页 | 10.12 MB | 9 月前3 Python 标准库参考指南 3.9.20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 16.7 logging.config None,则将使 用sys.stdout。由于要打印的参数会被转换为文本字符串,因此print() 不能用于二进制模式 的文件对象。对于这些对象,应改用 file.write(...)。 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为真值,流会被强制刷新。 在 3.3 版更改: 增加了 flush 关键字参数。 class property(fget=None, fset=None string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可 以让程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使 用无需考虑编译的问题。 re.A re.ASCII 让 \w, \W, \b, \B, \d, \D, \s 和 \S 只匹配 ASCII,而不是 Unicode。这只对0 码力 | 2015 页 | 10.12 MB | 9 月前3
 Python 标准库参考指南 3.9.20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688 viii 16.7 logging None,则将使用sys. stdout。由于要打印的参数会被转换为文本字符串,因此print() 不能用于二进制模式的文件对象。 对于这些对象,应改用 file.write(...)。 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为真值,流会被强制刷新。 在 3.3 版更改: 增加了 flush 关键字参数。 class property(fget=None, fset=None string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可以让 程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使用无 需考虑编译的问题。 re.A re.ASCII 让 \w, \W, \b, \B, \d, \D, \s 和 \S 只匹配 ASCII,而不是 Unicode。这只对0 码力 | 2146 页 | 10.17 MB | 9 月前3 Python 标准库参考指南 3.9.20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 688 viii 16.7 logging None,则将使用sys. stdout。由于要打印的参数会被转换为文本字符串,因此print() 不能用于二进制模式的文件对象。 对于这些对象,应改用 file.write(...)。 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为真值,流会被强制刷新。 在 3.3 版更改: 增加了 flush 关键字参数。 class property(fget=None, fset=None string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可以让 程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使用无 需考虑编译的问题。 re.A re.ASCII 让 \w, \W, \b, \B, \d, \D, \s 和 \S 只匹配 ASCII,而不是 Unicode。这只对0 码力 | 2146 页 | 10.17 MB | 9 月前3
 Python 标准库参考指南 3.11.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709 16.7 logging.config re --- 正则表达式操作 125 The Python Library Reference, 发行版本 3.11.10 备注: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使 用无需考虑编译的问题。 re.search(pattern, string, flags=0) 扫描整个 string 查找正则表达式 pattern 产生匹配的第一个 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 异常 exception re.error(msg, pattern=None, pos=None) 当传递给函数的正则表达式不合法(比如括号不匹配),或者在编译或匹配过程中出现其他错误时,0 码力 | 2248 页 | 11.10 MB | 9 月前3 Python 标准库参考指南 3.11.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 709 16.7 logging.config re --- 正则表达式操作 125 The Python Library Reference, 发行版本 3.11.10 备注: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使 用无需考虑编译的问题。 re.search(pattern, string, flags=0) 扫描整个 string 查找正则表达式 pattern 产生匹配的第一个 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 异常 exception re.error(msg, pattern=None, pos=None) 当传递给函数的正则表达式不合法(比如括号不匹配),或者在编译或匹配过程中出现其他错误时,0 码力 | 2248 页 | 11.10 MB | 9 月前3
 Python 标准库参考指南 3.10.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 16.7 logging.config string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可 以让程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使 用无需考虑编译的问题。 re.search(pattern, string, flags=0) 扫描整个 字符串找到匹配样式的第一个位置,并返回一个相应的匹配对象。如果没有匹配,就返 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 异常 exception re.error(msg, pattern=None, pos=None) 当传递给函数的正则表达式不合法(比如括号不匹配),或者在编译或匹配过程中出现其他错误时,0 码力 | 2072 页 | 10.39 MB | 9 月前3 Python 标准库参考指南 3.10.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 16.7 logging.config string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可 以让程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使 用无需考虑编译的问题。 re.search(pattern, string, flags=0) 扫描整个 字符串找到匹配样式的第一个位置,并返回一个相应的匹配对象。如果没有匹配,就返 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 异常 exception re.error(msg, pattern=None, pos=None) 当传递给函数的正则表达式不合法(比如括号不匹配),或者在编译或匹配过程中出现其他错误时,0 码力 | 2072 页 | 10.39 MB | 9 月前3
 Python 标准库参考指南 3.11.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 760 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761 16.7 logging.config string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可以让 程序更加高效。 备注: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使用无 需考虑编译的问题。 re.search(pattern, string, flags=0) 扫描整个 string 查找正则表达式 pattern 产生匹配的第一个 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 异常 exception re.error(msg, pattern=None, pos=None) 当传递给函数的正则表达式不合法(比如括号不匹配),或者在编译或匹配过程中出现其他错误时,会0 码力 | 2399 页 | 11.19 MB | 9 月前3 Python 标准库参考指南 3.11.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 760 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761 16.7 logging.config string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可以让 程序更加高效。 备注: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使用无 需考虑编译的问题。 re.search(pattern, string, flags=0) 扫描整个 string 查找正则表达式 pattern 产生匹配的第一个 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 异常 exception re.error(msg, pattern=None, pos=None) 当传递给函数的正则表达式不合法(比如括号不匹配),或者在编译或匹配过程中出现其他错误时,会0 码力 | 2399 页 | 11.19 MB | 9 月前3
 Python 标准库参考指南 3.10.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710 16.7 logging.config string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可以让 程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使用无 需考虑编译的问题。 re.search(pattern, string, flags=0) 扫描整个 字符串找到匹配样式的第一个位置,并返回一个相应的匹配对象。如果没有匹配,就返回一 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 异常 exception re.error(msg, pattern=None, pos=None) 当传递给函数的正则表达式不合法(比如括号不匹配),或者在编译或匹配过程中出现其他错误时,会0 码力 | 2207 页 | 10.45 MB | 9 月前3 Python 标准库参考指南 3.10.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710 16.6.12 与警告模块集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710 16.7 logging.config string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可以让 程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使用无 需考虑编译的问题。 re.search(pattern, string, flags=0) 扫描整个 字符串找到匹配样式的第一个位置,并返回一个相应的匹配对象。如果没有匹配,就返回一 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 异常 exception re.error(msg, pattern=None, pos=None) 当传递给函数的正则表达式不合法(比如括号不匹配),或者在编译或匹配过程中出现其他错误时,会0 码力 | 2207 页 | 10.45 MB | 9 月前3
 Python 标准库参考指南 3.8.20 None,则将使 用sys.stdout。由于要打印的参数会被转换为文本字符串,因此print() 不能用于二进制模式 的文件对象。对于这些对象,应改用 file.write(...)。 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为真值,流会被强制刷新。 在 3.3 版更改: 增加了 flush 关键字参数。 class property(fget=None, fset=None string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可 以让程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使 用无需考虑编译的问题。 re.A re.ASCII 让 \w, \W, \b, \B, \d, \D, \s 和 \S 只匹配 ASCII,而不是 Unicode。这只对 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 108 Chapter 6. 文本处理服务 The Python Library Reference, 发布 3.8.20 exception re.error(msg, pattern=None0 码力 | 1927 页 | 9.69 MB | 9 月前3 Python 标准库参考指南 3.8.20 None,则将使 用sys.stdout。由于要打印的参数会被转换为文本字符串,因此print() 不能用于二进制模式 的文件对象。对于这些对象,应改用 file.write(...)。 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为真值,流会被强制刷新。 在 3.3 版更改: 增加了 flush 关键字参数。 class property(fget=None, fset=None string) 如果需要多次使用这个正则表达式的话,使用re.compile() 和保存这个正则对象以便复用,可 以让程序更加高效。 注解: 通过re.compile() 编译后的样式,和模块级的函数会被缓存,所以少数的正则表达式使 用无需考虑编译的问题。 re.A re.ASCII 让 \w, \W, \b, \B, \d, \D, \s 和 \S 只匹配 ASCII,而不是 Unicode。这只对 。因此,'!', '"', '%', "'", ',', '/', ':', ';', '<', '=', '>', '@' 和 "`" 将不再会被转义。 re.purge() 清除正则表达式的缓存。 108 Chapter 6. 文本处理服务 The Python Library Reference, 发布 3.8.20 exception re.error(msg, pattern=None0 码力 | 1927 页 | 9.69 MB | 9 月前3
共 134 条
- 1
- 2
- 3
- 4
- 5
- 6
- 14














