Hello 算法 1.0.0 Python版最终得到了可行的找零方 案。从数据结构与算法的角度看,这种方法本质上是“贪心”算法。 小到烹饪一道菜,大到星际航行,几乎所有问题的解决都离不开算法。计算机的出现使得我们能够通过编程 将数据结构存储在内存中,同时编写代码调用 CPU 和 GPU 执行算法。这样一来,我们就能把生活中的问题 转移到计算机上,以更高效的方式解决各种复杂问题。 � 如果你对数据结构、算法、数组和二分查找等概念仍感到一知半解,请继续往下阅读,本书将 具有可行性,能够在有限步骤、时间和内存空间下完成。 ‧ 各步骤都有确定的含义,在相同的输入和运行条件下,输出始终相同。 1.2.2 数据结构定义 「数据结构 data structure」是计算机中组织和存储数据的方式,具有以下设计目标。 ‧ 空间占用尽量少,以节省计算机内存。 第 1 章 初识算法 hello‑algo.com 14 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。 ‧ 数据结构是算法的基石。数据结构为算法提供了结构化存储的数据,以及操作数据的方法。 ‧ 算法是数据结构发挥作用的舞台。数据结构本身仅存储数据信息,结合算法才能解决特定问题。 ‧ 算法通常可以基于不同的数据结构实现,但执行效率可能相差很大,选择合适的数据结构是关键。 图 1‑4 数据结构与算法的关系0 码力 | 362 页 | 17.54 MB | 1 年前3
Hello 算法 1.1.0 Python版最终得到了可行的找零方 案。从数据结构与算法的角度看,这种方法本质上是“贪心”算法。 小到烹饪一道菜,大到星际航行,几乎所有问题的解决都离不开算法。计算机的出现使得我们能够通过编程 将数据结构存储在内存中,同时编写代码调用 CPU 和 GPU 执行算法。这样一来,我们就能把生活中的问题 转移到计算机上,以更高效的方式解决各种复杂问题。 Tip 如果你对数据结构、算法、数组和二分查找等概 具有可行性,能够在有限步骤、时间和内存空间下完成。 ‧ 各步骤都有确定的含义,在相同的输入和运行条件下,输出始终相同。 1.2.2 数据结构定义 数据结构(data structure)是计算机中组织和存储数据的方式,具有以下设计目标。 ‧ 空间占用尽量少,以节省计算机内存。 第 1 章 初识算法 hello‑algo.com 14 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。 ‧ 数据结构是算法的基石。数据结构为算法提供了结构化存储的数据,以及操作数据的方法。 ‧ 算法是数据结构发挥作用的舞台。数据结构本身仅存储数据信息,结合算法才能解决特定问题。 ‧ 算法通常可以基于不同的数据结构实现,但执行效率可能相差很大,选择合适的数据结构是关键。 图 1‑4 数据结构与算法的关系0 码力 | 364 页 | 18.42 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Python 版最终得到了可行的找零方 案。从数据结构与算法的角度看,这种方法本质上是“贪心”算法。 小到烹饪一道菜,大到星际航行,几乎所有问题的解决都离不开算法。计算机的出现使得我们能够通过编程 将数据结构存储在内存中,同时编写代码调用 CPU 和 GPU 执行算法。这样一来,我们就能把生活中的问题 转移到计算机上,以更高效的方式解决各种复杂问题。 Tip 如果你对数据结构、算法、数组和二分查找等概 具有可行性,能够在有限步骤、时间和内存空间下完成。 ‧ 各步骤都有确定的含义,在相同的输入和运行条件下,输出始终相同。 1.2.2 数据结构定义 数据结构(data structure)是组织和存储数据的方式,涵盖数据内容、数据之间关系和数据操作方法,它具 有以下设计目标。 第 1 章 初识算法 www.hello‑algo.com 14 ‧ 空间占用尽量少,以节省计算机内存。 ‧ 数 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。 ‧ 数据结构是算法的基石。数据结构为算法提供了结构化存储的数据,以及操作数据的方法。 ‧ 算法为数据结构注入生命力。数据结构本身仅存储数据信息,结合算法才能解决特定问题。 ‧ 算法通常可以基于不同的数据结构实现,但执行效率可能相差很大,选择合适的数据结构是关键。 图 1‑4 数据结构与算法的关系0 码力 | 364 页 | 18.43 MB | 10 月前3
Hello 算法 1.0.0b1 Python版内容结构 本书主要内容有: ‧ 复杂度分析:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算 方法、常见类型、示例等。 ‧ 数据结构:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、 散列表、树、堆、图等数据结构,内容包括定义、优劣势、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:查找算法、排序算法、搜索与回溯、动态规划 是一个已排序的「数组」;而从算法角度,我们可将上述查字典的一系列指令看作是「二分查找」算法。 小到烹饪一道菜、大到星际航行,几乎所有问题的解决都离不开算法。计算机的出现,使我们可以通过编程将 数据结构存储在内存中,也可以编写代码来调用 CPU, GPU 执行算法,从而将生活中的问题搬运到计算机中, 更加高效地解决各式各样的复杂问题。 � 读到这里,如果你感到对数据结构、算法、数组、二分查找等此类概念一知半解,那么就太好 具有可行性,可在有限步骤、有限时间、有限内存空间下完成。 ‧ 独立于编程语言,即可用多种语言实现。 1.2.2. 数据结构定义 「数据结构 Data Structure」是在计算机中组织与存储数据的方式。为了提高数据存储和操作性能,数据结构 的设计原则有: ‧ 空间占用尽可能小,节省计算机内存。 ‧ 数据操作尽量快,包括数据访问、添加、删除、更新等。 1. 引言 hello‑algo.com 100 码力 | 178 页 | 14.67 MB | 1 年前3
Hello 算法 1.0.0b2 Python版内容结构 本书主要内容有: ‧ 复杂度分析:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算 方法、常见类型、示例等。 ‧ 数据结构:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、 散列表、树、堆、图等数据结构,内容包括定义、优劣势、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:查找算法、排序算法、搜索与回溯、动态规划 是一个已排序的「数组」;而从算法角度,我们可将上述查字典的一系列指令看作是「二分查找」算法。 小到烹饪一道菜、大到星际航行,几乎所有问题的解决都离不开算法。计算机的出现,使我们可以通过编程将 数据结构存储在内存中,也可以编写代码来调用 CPU, GPU 执行算法,从而将生活中的问题搬运到计算机中, 更加高效地解决各式各样的复杂问题。 � 读到这里,如果你感到对数据结构、算法、数组、二分查找等此类概念一知半解,那么就太好 具有可行性,可在有限步骤、有限时间、有限内存空间下完成。 ‧ 独立于编程语言,即可用多种语言实现。 1.2.2. 数据结构定义 「数据结构 Data Structure」是在计算机中组织与存储数据的方式。为了提高数据存储和操作性能,数据结构 的设计原则有: ‧ 空间占用尽可能小,节省计算机内存。 ‧ 数据操作尽量快,包括数据访问、添加、删除、更新等。 1. 引言 hello‑algo.com 100 码力 | 186 页 | 15.69 MB | 1 年前3
Python 标准库参考指南 3.8.20 __dir__(),这个函数会尝试从对象已定义的__dict__ 属性和类型对象收集信息。 结果列表并不总是完整的,如果对象有自定义 __getattr__(),那结果可能不准确。 默认的dir() 机制对不同类型的对象行为不同,它会试图返回最相关而不是最全的信息: • 如果对象是模块对象,则列表包含模块的属性名称。 • 如果对象是类型或类对象,则列表包含它们的属性名称,并且递归查找所有基类的属性。 对象: >>> class X: ... a = 1 ... >>> X = type('X', (), dict(a=1)) 另请参阅类型对象。 提供给三参数形式的关键字参数会被传递给适当的元类机制 (通常为 __init_subclass__()),相当 于类定义中关键字 (除了 metaclass) 的行为方式。 另请参阅 class-customization。 在 3.6 版更改: False: >>> (-2.0).is_integer() True >>> (3.2).is_integer() False 两个方法均支持与十六进制数字符串之间的转换。由于 Python 浮点数在内部存储为二进制数,因此浮点数 与 十进制数字符串之间的转换往往会导致微小的舍入错误。而十六进制数字符串却允许精确地表示和描述 浮点数。这在进行调试和数值工作时非常有用。 float.hex() 以十六0 码力 | 2052 页 | 9.74 MB | 9 月前3
Python 标准库参考指南 3.8.20 __dir__(),这个函数会尝试从对象已定义的__dict__ 属性和类型对象收集信 息。结果列表并不总是完整的,如果对象有自定义 __getattr__(),那结果可能不准确。 默认的dir() 机制对不同类型的对象行为不同,它会试图返回最相关而不是最全的信息: • 如果对象是模块对象,则列表包含模块的属性名称。 • 如果对象是类型或类对象,则列表包含它们的属性名称,并且递归查找所有基类的属性。 对象: >>> class X: ... a = 1 ... >>> X = type('X', (), dict(a=1)) 另请参阅类型对象。 提供给三参数形式的关键字参数会被传递给适当的元类机制 (通常为 __init_subclass__()), 相当于类定义中关键字 (除了 metaclass) 的行为方式。 另请参阅 class-customization。 在 3.6 版更改: False: >>> (-2.0).is_integer() True >>> (3.2).is_integer() False 两个方法均支持与十六进制数字符串之间的转换。由于 Python 浮点数在内部存储为二进制数,因此浮点 数与 十进制数字符串之间的转换往往会导致微小的舍入错误。而十六进制数字符串却允许精确地表示和 描述浮点数。这在进行调试和数值工作时非常有用。 float.hex() 以十六0 码力 | 1927 页 | 9.69 MB | 9 月前3
Python 标准库参考指南 3.8.20 __dir__(),这个函数会尝试从对象已定义的__dict__ 属性和类型对象收集信 息。结果列表并不总是完整的,如果对象有自定义 __getattr__(),那结果可能不准确。 默认的dir() 机制对不同类型的对象行为不同,它会试图返回最相关而不是最全的信息: • 如果对象是模块对象,则列表包含模块的属性名称。 • 如果对象是类型或类对象,则列表包含它们的属性名称,并且递归查找所有基类的属性。 对象: >>> class X: ... a = 1 ... >>> X = type('X', (), dict(a=1)) 另请参阅类型对象。 提供给三参数形式的关键字参数会被传递给适当的元类机制 (通常为 __init_subclass__()), 相当于类定义中关键字 (除了 metaclass) 的行为方式。 另请参阅 class-customization。 在 3.6 版更改: False: >>> (-2.0).is_integer() True >>> (3.2).is_integer() False 两个方法均支持与十六进制数字符串之间的转换。由于 Python 浮点数在内部存储为二进制数,因此浮点 数与 十进制数字符串之间的转换往往会导致微小的舍入错误。而十六进制数字符串却允许精确地表示和 描述浮点数。这在进行调试和数值工作时非常有用。 float.hex() 以十六0 码力 | 1927 页 | 9.69 MB | 9 月前3
Python 标准库参考指南 3.10.15 __dir__() 方法,该函数会尽量从对象的__dict__ 属性和其类型对象中收集信息。 得到的列表不一定是完整,如果对象带有自定义 __getattr__() 方法时,结果可能不准确。 默认的dir() 机制对不同类型的对象行为不同,它会试图返回最相关而不是最全的信息: • 如果对象是模块对象,则列表包含模块的属性名称。 • 如果对象是类型或类对象,则列表包含它们的属性名称,并且递归查找所有基类的属性。 对象: >>> class X: ... a = 1 ... >>> X = type('X', (), dict(a=1)) 另请参阅类型对象。 提供给三参数形式的关键字参数会被传递给适当的元类机制 (通常为 __init_subclass__()),相当 于类定义中关键字 (除了 metaclass) 的行为方式。 另请参阅 class-customization。 在 3.6 版更改: False: >>> (-2.0).is_integer() True >>> (3.2).is_integer() False 两个方法均支持与十六进制数字符串之间的转换。由于 Python 浮点数在内部存储为二进制数,因此浮点数 与 十进制数字符串之间的转换往往会导致微小的舍入错误。而十六进制数字符串却允许精确地表示和描述 浮点数。这在进行调试和数值工作时非常有用。 float.hex() 以十六0 码力 | 2207 页 | 10.45 MB | 9 月前3
Python 标准库参考指南 3.10.15 __dir__() 方法,该函数会尽量从对象的__dict__ 属性和其类型对象中收集信 息。得到的列表不一定是完整,如果对象带有自定义 __getattr__() 方法时,结果可能不准确。 默认的dir() 机制对不同类型的对象行为不同,它会试图返回最相关而不是最全的信息: • 如果对象是模块对象,则列表包含模块的属性名称。 • 如果对象是类型或类对象,则列表包含它们的属性名称,并且递归查找所有基类的属性。 对象: >>> class X: ... a = 1 ... >>> X = type('X', (), dict(a=1)) 另请参阅类型对象。 提供给三参数形式的关键字参数会被传递给适当的元类机制 (通常为 __init_subclass__()), 相当于类定义中关键字 (除了 metaclass) 的行为方式。 另请参阅 class-customization。 在 3.6 版更改: False: >>> (-2.0).is_integer() True >>> (3.2).is_integer() False 两个方法均支持与十六进制数字符串之间的转换。由于 Python 浮点数在内部存储为二进制数,因此浮点 数与 十进制数字符串之间的转换往往会导致微小的舍入错误。而十六进制数字符串却允许精确地表示和 描述浮点数。这在进行调试和数值工作时非常有用。 float.hex() 以十六0 码力 | 2072 页 | 10.39 MB | 9 月前3
共 156 条
- 1
- 2
- 3
- 4
- 5
- 6
- 16













