首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【愚公系列】2023年12月 五大常用算法(三)-动态规划算法

【愚公系列】2023年12月 五大常用算法(三)-动态规划算法

原创
作者头像
愚公搬代码
修改于 2023-12-20 12:20:37
修改于 2023-12-20 12:20:37
3801
举报
文章被收录于专栏:历史专栏历史专栏

位置和数量

作用

一个放后面

避免名字冲突

两个放两边

系统变量

  • 能把内建模块(builtins)
  • 覆盖掉吗??🤔

重新赋值 __builtins__ = 1

  • 所有的 内建函数
  • 直接 都不认识了😭
  • 这 搞崩系统 啦?!!! 😭
  • 所有函数 失效!!!! 😭
  • 赶紧喊救命

绝望

  • 喊救命
  • 也没人理了 😭😭😭
  • 退 都 退不出去了!!!🥹
  • 本地真的没有__builtins__了吗?

本地 locals()

  • 内建模块中函数
  • 全部失效

添加图片注释,不超过 140 字(可选)

结果

  • 尝试引用外部模块 os

import os

  • python 已经彻底崩溃
  • 暴露出了c语言源程序
  • 代码的位置

添加图片注释,不超过 140 字(可选)

  • 怎么办?

删除变量

  • 把__builtins__删除了
  • 原内建模块 就重见天日了

__builtins__ = 1 del __builtins__

  • 一切都恢复了

添加图片注释,不超过 140 字(可选)

  • 在等号两端 总保留 一个空格
  • 看起来没什么意义啊
  • 为什么要 加空格呢?

可读性

  • 空格
  • 完成 留白
  • 非常优雅

添加图片注释,不超过 140 字(可选)

  • 增加了 文档的可读性

添加图片注释,不超过 140 字(可选)

  • 这两句话从何说起

加空格的原因 import this

  • 这两句话也来自于
  • python之禅
  • The Zen of Python

添加图片注释,不超过 140 字(可选)

  • 有 明确文档 做过要求 吗?

具体规范

添加图片注释,不超过 140 字(可选)

  • 赋值运算符(=)周围
  • 两边各有一个空格
  • 不要超过一个空格
  • pep8是什么意思呢?

pep8

添加图片注释,不超过 140 字(可选)

  • PEP 8
  • 是 Python Enhancement Proposals 8
  • Python 代码风格指南
  • 从现在开始
  • 养成习惯
  • 打好基础
  • 提高代码质量
  • 认真、专业 的
  • 能 看得出来
  • 乱写的 代码
  • 让人一看 就想要离开
  • 拒人千里之外
  • 为什么会有下划线这么一个标点呢?

下划线来历

  • 打字机时代
  • 早期使用字模
  • 没有粗体
  • 没有斜体
  • 甚至没有 小写字母

添加图片注释,不超过 140 字(可选)

  • 想要表现重点
  • 就用下划线

电子排版领域 The underscore is not the same character as the dash character, although one convention for text news wires is to use an underscore when an em-dash or en-dash is desired, or when other non-standard characters such as bullets would be appropriate. A series of underscores [like -___ ] may be used to create a blank to be filled in on a form, although the resulting blank may have tiny gaps between each individual underscore. It is also sometimes used to create a horizontal line; other symbols with similar graphemes, such as hyphens and dashes, are also used for this purpose.

  • 制作电子文稿的时候
  • 可以作为 填空的位置

计算机时代

  • 计算机时代 有的时候
  • 需要使用空格
  • 系统 对于命名 有要求
  • 邮件地址
  • 文件名
  • 网址
  • 代码中的标识符

This character is sometimes used to create visual spacing within a sequence of characters, where a whitespace characteris not permitted (e.g., in computer filenames, email addresses, and in Internet URLs). Some computer applications will automatically underline text surrounded by underscores: underlined will render underlined. It is often used in plain text-only media (IRC, instant messaging, classical Email) for this purpose.

  • 这个时候 使用下划线 代替空格

When the underscore is used for emphasis in this fashion, it is usually interpreted as indicating that the enclosed text is underlined (as opposed to being italicized or bold, which is indicated by /slashes/ or asterisks, respectively).

  • 依然可以表示强调

总结

  • 这次玩的 还是 下划线
  • 下划线 在变量定义的时候
  • 代替空格
  • 空格本身也很重要
  • 留白 让 代码
  • 提高可读性

添加图片注释,不超过 140 字(可选)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
1 条评论
热度
最新
这篇文章介绍了什么是动态规划,从暴力搜索、记忆化搜索、到动态规划,层层递进,有深度也有广度,适合初学者、也适合进阶学习者。
这篇文章介绍了什么是动态规划,从暴力搜索、记忆化搜索、到动态规划,层层递进,有深度也有广度,适合初学者、也适合进阶学习者。
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
LeetCode动态规划全解析:从基础到高级应用
动态规划(Dynamic Programming,简称DP)是一种解决复杂问题的方法,它通过将原问题分解为相对简单的子问题,先求解子问题,然后从这些子问题的解得到原问题的解。
安全风信子
2025/11/13
1440
IO竞赛深入解析:动态规划专题完全指南
动态规划(Dynamic Programming,简称DP)是IO竞赛中最常用且最强大的算法思想之一。它能够将复杂问题分解为若干个子问题,通过解决子问题并保存中间结果,最终高效地解决原问题。在IO竞赛中,动态规划类题目占据了很大比例,掌握动态规划的思想和技巧对于取得好成绩至关重要。本文将从动态规划的基础概念出发,深入解析各类动态规划问题的解法,并通过大量实例帮助读者全面掌握这一重要算法思想。
安全风信子
2025/11/12
2520
动态规划之完全背包
完全背包 隶属于动态规划中的背包问题。而 01背包 又是完全背包的基石,所以不懂01背包的,有必要了解一下。
十二.
2025/10/22
1260
动态规划之完全背包
动态规划入门详解
动态规划(Dynamic Programming,简称DP)是一种算法思想,它将问题分解为更小的子问题,然后将子问题的解存起来,避免重复计算。
十二.
2025/10/22
1550
动态规划入门详解
【愚公系列】2023年12月 五大常用算法(四)-贪心算法
贪心算法(Greedy Algorithm)的基本思想是,在每一步中都选择局部最优的解,最终得到全局最优解。也就是说,贪心算法是在一定的约束条件下,逐步地构建问题的解,通过每一步选择局部最优的策略来达到全局最优的解。贪心算法的求解过程非常高效,但有时可能会得到次优解或者无解。因此,在应用贪心算法时,需要注意问题的约束条件和性质,以及选取合适的贪心策略。
愚公搬代码
2023/12/15
4000
【冲击蓝桥篇】动态规划(下):你还在怕动态规划!?进来!答题模板+思路解析+真题实战
上篇主要是刷了两道真题(接龙数组和蜗牛 都是蓝桥杯2023的真题)有兴趣可以看看这个http://t.csdnimg.cn/AM9c2
苏泽
2024/03/01
4311
动态规划算法(Dynamic Programming)之0-1背包问题
前面讲了0-1背包的回溯解决方法,它是穷举所有可能,复杂度是指数级别的,如何降低时间复杂度呢?
Michael阿明
2021/02/20
2.5K0
动态规划算法(Dynamic Programming)之0-1背包问题
五大常用算法之二:动态规划算法
动态规划过程是:每次决策依赖于当前状态,又随即引起状态的转移。一个决策序列就是在变化的状态中产生出来的,所以,这种多阶段最优化决策解决问题的过程就称为动态规划。
全栈程序员站长
2022/07/15
2350
搞定大厂算法面试之leetcode精讲3.动态规划
动态规划,英文:Dynamic Programming,简称DP,将问题分解为互相重叠的子问题,通过反复求解子问题来解决原问题就是动态规划,如果某一问题有很多重叠子问题,使用动态规划来解是比较有效的。
全栈潇晨
2021/11/22
5080
搞定大厂算法面试之leetcode精讲3.动态规划
本周小结!(动态规划系列五)
动态规划:377. 组合总和 Ⅳ中给定一个由正整数组成且不存在重复数字的数组,找出和为给定目标正整数的组合的个数(顺序不同的序列被视作不同的组合)。
代码随想录
2021/02/26
7050
八十八、从斐波那契数列和零一背包问题探究动态规划
本人看了vivo,阿里巴巴的校招算法题,可以明确知道绝对有动态规划。如果没有,那么出题的面试官真的没有水平。跌了N次的动态规划,Runsen最近也拼命搞动态规划。这篇文章浪费了三天时间。
润森
2022/08/17
5030
八十八、从斐波那契数列和零一背包问题探究动态规划
面试+算法之动态规划(Java):斐波那契、背包问题、走棋盘、分苹果、连续子数组最大和、秤砝码、最长公共子串、切割钢条、最长不下降子序列、最优二分搜索树、矩阵链
Dynamic programming,简称DP,动态规划,基础算法之一,维基百科的解释:
johnny666
2024/09/18
4330
动态规划算法
首先,动态规划问题的一般形式就是求最值。动态规划其实是运筹学的一种最优化方法,只不过在计算机问题上应用比较多,比如说让你求最长递增子序列呀,最小编辑距离呀等等。
麋鹿大哥
2020/08/19
6230
算法细节系列(9):动态规划之01背包
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014688145/article/details/70175161
用户1147447
2019/05/26
5510
算法之动态规划
动态规划(Dynamic Programming,简称DP)算法是一种通过将问题(比较复杂)划分为相互重叠的子问题(简单易于求解),并解决子问题来解决原问题的方法。它通常用于优化问题,其中需要找到最优解或最大/最小值。
九转成圣
2024/04/10
3080
算法之动态规划
【算法学习】动态规划
动态规划(dynamic programming)是一种基础的算法设计思想。作为一种寻找最优解的通用方法,它是在20世纪50年代由美国数学家Richard Bellman(也就是之前最短路径问题中Bellman ford算法的发明者之一)所发明的。
短短的路走走停停
2019/11/10
8370
【算法学习】动态规划
经典动态规划:完全背包问题
零钱兑换 2 是另一种典型背包问题的变体,我们前文已经讲了 经典动态规划:0-1 背包问题 和 背包问题变体:相等子集分割。
labuladong
2021/09/23
6290
『ACM-算法-动态规划』初识DP动态规划算法
一、多阶段决策过程的最优化问题 在现实生活中,有类活 动的过程,由于 它的特殊性,可将过程分成若干个互相阶段。在它的每一阶段都需要作出决策,从而使整个过程达到最好的活动效果。当阶段决策的选取不是任意确定的,它依赖于当前面临的状态,又影响以后的发展,当段决策确定后,就组成一个决策序列,因而也就确定了整个过程的一条活动路线,这个问题看作是个前后关联具有链状结构的 多阶段过程就称为多阶段决策过程,这就称为多阶段决策问题。 多阶段决策过程,是指这样的一类特殊的活动过程,问题可以按时间顺序分解互联系的阶段,在每-个阶段都要作出决策,全部过程的决策是-个决策序列。
风骨散人Chiam
2020/10/28
7800
【C++】算法集锦(4):给人看的动态规划
动态规划问题,它不叫动态规划算法,因为它不是一种算法,它是一众类型的问题的统称。 我们前面两篇的“递归算法”、“回溯算法”,以及接下来会讲的“贪心算法”等都属于动态规划的范畴。
看、未来
2021/09/18
3780
js分类刷leetcode动态规划
动态规划,英文:Dynamic Programming,简称DP,将问题分解为互相重叠的子问题,通过反复求解子问题来解决原问题就是动态规划,如果某一问题有很多重叠子问题,使用动态规划来解是比较有效的。
js2030code
2022/12/09
1.4K0
推荐阅读
相关推荐
LeetCode动态规划全解析:从基础到高级应用
更多 >
交个朋友
加入腾讯云官网粉丝站
双11活动抢先看 更有社群专属礼券掉落
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
首页
学习
活动
专区
圈层
工具
MCP广场
首页
学习
活动
专区
圈层
工具
MCP广场