Hello 算法 1.0.0b1 Python版Structure」是在计算机中组织与存储数据的方式。为了提高数据存储和操作性能,数据结构 的设计原则有: ‧ 空间占用尽可能小,节省计算机内存。 ‧ 数据操作尽量快,包括数据访问、添加、删除、更新等。 1. 引言 hello‑algo.com 10 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构的设计是一个充满权衡的过程,这意味着如果获得某方面的优势,则往往需要在另一方面做出妥协。 若感到阅读困难,建议先看完下个章节「数组与链表」,再回过头来理解物理结构的含义。 「物理结构」反映了数据在计算机内存中的存储方式。从本质上看,分别是 数组的连续空间存储 和 链表的离散 空间存储。物理结构从底层上决定了数据的访问、更新、增删等操作方法,在时间效率和空间效率方面呈现出 此消彼长的特性。 3. 数据结构简介 hello‑algo.com 40 Figure 3‑4. 连续空间存储与离散空间存储 所有数据结构都 4] 访问与更新元素。列表的底层数据结构是数组,因此可以在 ?(1) 时间内访问与更新元素,效率很高。 4. 数组与链表 hello‑algo.com 51 # === File: list.py === """ 访问元素 """ num = list[1] # 访问索引 1 处的元素 """ 更新元素 """ list[1] = 0 # 将索引 1 处的元素更新为 0 在列表中0 码力 | 178 页 | 14.67 MB | 1 年前3
Hello 算法 1.0.0b2 Python版Structure」是在计算机中组织与存储数据的方式。为了提高数据存储和操作性能,数据结构 的设计原则有: ‧ 空间占用尽可能小,节省计算机内存。 ‧ 数据操作尽量快,包括数据访问、添加、删除、更新等。 1. 引言 hello‑algo.com 10 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构的设计是一个充满权衡的过程,这意味着如果获得某方面的优势,则往往需要在另一方面做出妥协。 若感到阅读困难,建议先看完下个章节「数组与链表」,再回过头来理解物理结构的含义。 「物理结构」反映了数据在计算机内存中的存储方式。从本质上看,分别是 数组的连续空间存储 和 链表的离散 空间存储。物理结构从底层上决定了数据的访问、更新、增删等操作方法,在时间效率和空间效率方面呈现出 此消彼长的特性。 3. 数据结构简介 hello‑algo.com 40 Figure 3‑4. 连续空间存储与离散空间存储 所有数据结构都 4] 访问与更新元素。列表的底层数据结构是数组,因此可以在 ?(1) 时间内访问与更新元素,效率很高。 4. 数组与链表 hello‑algo.com 51 # === File: list.py === """ 访问元素 """ num: int = list[1] # 访问索引 1 处的元素 """ 更新元素 """ list[1] = 0 # 将索引 1 处的元素更新为 0 在0 码力 | 186 页 | 15.69 MB | 1 年前3
Hello 算法 1.0.0b4 Python版Structure」是计算机中组织和存储数据的方式。为了提高数据存储和操作性能,数据结构 的设计目标包括: ‧ 空间占用尽量减少,节省计算机内存。 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 1. 初识算法 hello‑algo.com 10 ‧ 提供简洁的数据表示和逻辑信息,以便使得算法高效运行。 数据结构设计是一个充满权衡的过程,这意味着要在某方面取得优势,往往需要在另一方面作出妥协。例如, 运行的程序很多并且缺少大量连续的内存空间,那么所选用的数据结构必须能够存储在离散的内存空间内。 「物理结构」反映了数据在计算机内存中的存储方式,可分为数组的连续空间存储和链表的离散空间存储。物 理结构从底层决定了数据的访问、更新、增删等操作方法,同时在时间效率和空间效率方面呈现出互补的特 点。 3. 数据结构 hello‑algo.com 38 Figure 3‑3. 连续空间存储与离散空间存储 所有数据结构都是基 List[int] = [1, 3, 2, 5, 4] 访问与更新元素。由于列表的底层数据结构是数组,因此可以在 ?(1) 时间内访问和更新元素,效率很高。 # === File: list.py === # 访问元素 num: int = list[1] # 访问索引 1 处的元素 # 更新元素 list[1] = 0 # 将索引 1 处的元素更新为 0 在列表中添加、插入、删除元素。相较于数组0 码力 | 329 页 | 27.34 MB | 1 年前3
Hello 算法 1.1.0 Python版structure)是计算机中组织和存储数据的方式,具有以下设计目标。 ‧ 空间占用尽量少,以节省计算机内存。 第 1 章 初识算法 hello‑algo.com 14 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数 ..., n-1, n while i <= n: res += i i += 1 # 更新条件变量 return res while 循环比 for 循环的自由度更高。在 while 循环中,我们可以自由地设计条件变量的初始化和更新步 骤。 例如在以下代码中,条件变量 ? 每轮进行两次更新,这种情况就不太方便用 for 循环实现: 第 2 章 复杂度分析 hello‑algo.com py === def while_loop_ii(n: int) -> int: """while 循环(两次更新)""" res = 0 i = 1 # 初始化条件变量 # 循环求和 1, 4, 10, ... while i <= n: res += i # 更新条件变量 i += 1 i *= 2 return res 总的来说,for 循环的代码更加紧凑,while0 码力 | 364 页 | 18.42 MB | 1 年前3
Hello 算法 1.0.0b5 Python版structure」是计算机中组织和存储数据的方式,具有以下设计目标。 ‧ 空间占用尽量减少,节省计算机内存。 第 1 章 初识算法 hello‑algo.com 13 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便使得算法高效运行。 数据结构设计是一个充满权衡的过程。如果想要在某方面取得提升,往往需要在另一方面作出妥协。下面举 两个例子。 ‧ 链表相较于数组 ..., n-1, n while i <= n: res += i i += 1 # 更新条件变量 return res 在 while 循环中,由于初始化和更新条件变量的步骤是独立在循环结构之外的,因此它比 for 循环的自由度 更高。 例如在以下代码中,条件变量 ? 每轮进行了两次更新,这种情况就不太方便用 for 循环实现。 第 2 章 复杂度分析 hello‑algo.com iteration.py === def while_loop_ii(n: int) -> int: """while 循环(两次更新)""" res = 0 i = 1 # 初始化条件变量 # 循环求和 1, 4, ... while i <= n: res += i # 更新条件变量 i += 1 i *= 2 return res 总的来说,for 循环的代码更加紧凑,while 循0 码力 | 361 页 | 30.64 MB | 1 年前3
Hello 算法 1.0.0 Python版structure」是计算机中组织和存储数据的方式,具有以下设计目标。 ‧ 空间占用尽量少,以节省计算机内存。 第 1 章 初识算法 hello‑algo.com 14 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数 ..., n-1, n while i <= n: res += i i += 1 # 更新条件变量 return res while 循环比 for 循环的自由度更高。在 while 循环中,我们可以自由地设计条件变量的初始化和更新步 骤。 例如在以下代码中,条件变量 ? 每轮进行两次更新,这种情况就不太方便用 for 循环实现: 第 2 章 复杂度分析 hello‑algo.com py === def while_loop_ii(n: int) -> int: """while 循环(两次更新)""" res = 0 i = 1 # 初始化条件变量 # 循环求和 1, 4, 10, ... while i <= n: res += i # 更新条件变量 i += 1 i *= 2 return res 总的来说,for 循环的代码更加紧凑,while0 码力 | 362 页 | 17.54 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Python 版操作方法,它具 有以下设计目标。 第 1 章 初识算法 www.hello‑algo.com 14 ‧ 空间占用尽量少,以节省计算机内存。 ‧ 数据操作尽可能快速,涵盖数据访问、添加、删除、更新等。 ‧ 提供简洁的数据表示和逻辑信息,以便算法高效运行。 数据结构设计是一个充满权衡的过程。如果想在某方面取得提升,往往需要在另一方面作出妥协。下面举两 个例子。 ‧ 链表相较于数组,在数 ..., n-1, n while i <= n: res += i i += 1 # 更新条件变量 return res while 循环比 for 循环的自由度更高。在 while 循环中,我们可以自由地设计条件变量的初始化和更新步 骤。 例如在以下代码中,条件变量 ? 每轮进行两次更新,这种情况就不太方便用 for 循环实现: 第 2 章 复杂度分析 www.hello‑algo py === def while_loop_ii(n: int) -> int: """while 循环(两次更新)""" res = 0 i = 1 # 初始化条件变量 # 循环求和 1, 4, 10, ... while i <= n: res += i # 更新条件变量 i += 1 i *= 2 return res 总的来说,for 循环的代码更加紧凑,while0 码力 | 364 页 | 18.43 MB | 10 月前3
10. 许振影 Python 深度学习技术在医学领域的应用与前景 Health Informatics[J]. arXiv preprint arXiv:1909.00384, 2019. 机器视觉在医学领域应用 物理驱动 1898-1995 X光、超声、核磁共振 热成像、同位素成像 应用驱动 1990- 影像引导、治疗计划、 多序列核磁、靶向造影 数据驱动 2010- 通过人工智能技术在海量 数据中,挖掘有效信息、 优化诊断与治疗方法 肺结节处理案例-预处理0 码力 | 17 页 | 1.84 MB | 1 年前3
3 Thautwarm 解放python的表达力 性能和安全性 语法和语义扩展 JIT 静态检查 参数的typeid组成了一个tuple, 这个tuple被添加到一 个叫jit_call_recorder的尾部。 jit_call_recorder根据调用记录唤醒jit 编译器,根据 用户可自定义的规则选择足够热的几个参数类型组 进行编译,生成jit函数的几个method。 同时,每次编译会根据已有的所有methods,生成一 个新的method查找函数。 演示。 JIT 函数 JIT 编译器 Base0 码力 | 43 页 | 10.71 MB | 1 年前3
Flask入门教程来安装 Flask: $ pipenv install flask 这会把 Flask 以及相关的一些依赖包安装到对应的虚拟环境,同时 Pipenv 会自动 更新依赖文件。 提示 如果你没有使用虚拟环境,记得将 Flask 更新到最新版本( pip install -U flask )。 本章小结 当你进行到这里,就意味这我们已经做好学习和开发Flask程序的全部准备了。使用 git alt="Walking Totoro" src="{{ url_for('static', filename='im ages/totoro.gif') }}"> 提示 这两张图片你可以自己替换为任意的图片(注意更新文件名),也可以在示例 程序的 GitHub 仓库下载。 第 4 章:静态文件 30 添加 CSS 虽然添加了图片,但页面还是非常简陋,因为我们还没有添加 CSS 定义。下面在 static flask initdb 命令就可以创 建数据库表: $ flask initdb 使用 --drop 选项可以删除表后重新创建: $ flask initdb --drop 创建、读取、更新、删除 在前面打开的 Python Shell 里,我们来测试一下常见的数据库操作。你可以跟着示 例代码来操作,也可以自由练习。 创建 下面的操作演示了如何向数据库中添加记录: 第 5 章:数据库0 码力 | 127 页 | 7.62 MB | 1 年前3
共 125 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13













