计算概论学习笔记(2)

感谢北大李戈老师讲解的计算概论。

【道阻且长,行则将至】

很多年没有intensive coding,现在这个系列是coding retake,一点点回忆之前的知识,希望能重回到一线。主要内容包括C,C++,Pytorch学术前沿项目学习和实践,预计会在2024年内完成。


1. Skill,训练得技能!!!编程不能只学Knowledge

2. 须抓大放小

3. 多练简单题

4. 选一本薄的书 (个人认为,参考书必要不大,该课程已经可以构建较全的知识体系,其余应该通过QA-driven方式借助互联网学习)

我发现李戈老师上编程课的思路挺独特,底层逻辑就是:培养大家对于程序的兴趣,喜欢和程序待一起,日久生情,设计了一条特别缓的学习曲线,让大家的内心有特别好的接纳范围。因为说到编程,大家或多或少会有一定的畏难情绪,这对于大多数人而言,大学前并未接触过。

感性认识计算机

1. 写程序就是告诉计算机要做什么。我们怎么跟计算机说,它才能听懂。 涉及两个问题:

        Q1. 应该说些什么?(计算机能接收的内容范围)- 本质

        Q2. 以什么形式说?

2. 假如你的大脑是一台计算机

        这是个很意思的事情,给了个数列找最大最小,作为自己思维的觉察者,去观察自己是怎么找到的。>> 存储特别的数,然后不断用新的数和特别的数进行比较大小,更新特别的数,等遍历了数列,就能输出最大最小。

        其实,我们写程序跟这个过程是一模一样的。(我也是这次回过来看才恍然大悟,觉得“假设...”具有精妙之处)

3.如果你来设计一门编程语言 ~ 形式

        转换角色,能激发大家对语言设计更深层的体会(太棒了!!),很容易就有了global picture,也不容易陷入到繁琐的语法中。

        如果我们来设计编程语言,这个时候可能就需要回到“假如你的大脑是一台计算机”,提出以下经典3问:

        Q1. 是不是任意单词计算机都应该认识? NO

        Q2. 数、计算符号?        

Q3. 多少元逻辑才怎么表示纷繁复杂的逻辑?(我最喜欢问题3,这就是从表象的纷繁复杂发掘了本质,这点很不简单

4. 快步走进C程序一二三

顺序结构、分支语句(if)、循环语句(for)、常用的结构:数组

程序可读性:必要的注释

5. 没有解决方案就没用程序

回溯S1提到的,我们写程序就是要从“应该说什么”以及“以什么形式说”两方面去告诉计算机。

显然,解决方案就是“应该说什么”,语法和规则就是“以什么形式说”。

切饼问题

Warining: 没用解决方案的时候,千万不要着急动手去求解!

6. 现有构想,再些程序

描述一个问题并不容易(现在是在用结构化程序设计来进行描述)

顿悟!!!现实世界要清楚、无歧义描述一个事情也不是很容易

7.体验结构化编程

能感知清晰的结构化程序设计的思想:‘模块思维’、模块内“高内聚”、模块间“低耦合”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/10518.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS 安装cocoapds

注意 CocoaPods安装是基于ruby环境的,所以要安装CocoaPods先要安装Ruby环境,国内不能直接安装,只能通过VPN或淘宝的Ruby镜像来访问。 安装过程 gem sources --remove https://rubygems.org/ ** (注意是两个“-”,否则会移除失败) …

Spring STOMP-开启STOMP

通过Spring框架的spring-messaging和spring-websocket模块,提供了对WebSocket上STOMP的支持。一但你添加了这些依赖项,你就可以像下面这个示例一样,通过WebSocket公开一个STOMP端点: import org.springframework.web.socket.conf…

掌握文件重命名技巧:一次性处理多路径文件并赋予独立编号

在日常工作和生活中,我们经常需要处理大量的文件,而文件重命名则是一项非常常见的任务。如何高效地一次性处理多路径文件并赋予独立编号,成为许多用户关注的焦点。本文将介绍云炫文件管理器一些实用的文件重命名技巧,帮助您轻松应…

蓝桥杯备战7.宇宙总统

P1781 宇宙总统 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 当时写cmp的时候没想到直接让string类型进行比较 #include<bits/stdc.h> #define endl \n #define int long long using namespace std; const int N 2e710,M 1e310; int a[N],pre[N]; int chi[N],math…

Python3 笔记:Python的常量

常量&#xff08;constant&#xff09;&#xff1a;跟变量相对应&#xff0c;指第一次赋予值后就保持固定不变的值。 Python里面没有声明常量的关键字&#xff0c;其他语言像C/C/Java会有const修饰符&#xff0c;但Python没有。 Python中没有使用语法强制定义常量&#xff0c…

前后端完全开源!功能丰富的在线教室项目:Agora Flat

Agora Flat&#xff1a;高效集成的在线教室解决方案&#xff0c;重塑互动学习新体验。- 精选真开源&#xff0c;释放新价值。 概览 Agora Flat是在GitHub平台上公开分享的一个全面开源项目&#xff0c;它精心设计为一个高性能的在线教室解决方案&#xff0c;旨在便捷地搭建支持…

根据标签最大层面ROI提取原始图像区域(二)

今天要实现的任务还是提取肿瘤的感兴趣区域。 有两个文件&#xff0c;一个是nii的原始图像文件&#xff0c;一个是nii的标签文件。我们要实现的是&#xff1a;在标签文件上选出最大层面&#xff0c;然后把最大层面的ROI映射到原始图像区域&#xff0c;在原始图像上提裁剪出ROI…

容器镜像安全管理解析

目录 1. 镜像的层次结构与安全性2. 安全扫描工具3. 安全的最佳实践4. 安全策略实施 镜像安全在容器化和云原生应用中至关重要&#xff0c;因为容器镜像通常包含了应用及其依赖的所有必要组件&#xff0c;任何安全漏洞都可能成为攻击的入口点。 1. 镜像的层次结构与安全性 容器…

【DevOps】Linux 网络命令netstat详解

目录 一、netstat 命令的主要功能 常用 netstat 命令及选项 二、示例和用法 1. 查看所有连接和监听端口 2. 显示端口和进程信息 3. 使用 netstat 查看路由表 4. 查看接口统计 5. 查看服务和协议的统计信息 6. 持续监控网络状态 7. 组合使用 netstat 选项 8. 其他有用…

GEE案例——广东省梅州市梅县区松口镇的梅江横山水灾监测(利用sentinel-1和大津法计算洪水时序面积)

背景 2024年4月5日晚,广东省气象部门发布消息称,4月5日0时到20时,广东中北部出现了暴雨到大暴雨,其中从化吕田累计雨量最大达到225.7毫米。累计降水量达到大暴雨的地方还包括惠州龙门县永汉镇205.2毫米、清远佛冈县水头镇188.6毫米、韶关新丰县梅坑镇174.5毫米、河源东源县…

锐捷EWEB网管系统RCE漏洞

文章目录 免责声明漏洞描述漏洞原理影响版本漏洞复现修复建议 免责声明 该文章只为学习和交流&#xff0c;请不要做违法乱纪的事情&#xff0c;如有与本人无关 漏洞描述 锐捷网管系统是由北京锐捷数据时代科技有限公司开发的新一代基于云的网络管理软件&#xff0c;以"…

哈希表(unordered_set、unordered_map)

文章目录 一、unordered_set、unordered_map的介绍二、哈希表的建立方法2.1闭散列2.2开散列&#xff08;哈希桶/拉链法&#xff09; 三、闭散列代码&#xff08;除留余数法&#xff09;四、开散列代码&#xff08;拉链法/哈希桶&#xff09; 一、unordered_set、unordered_map的…

数据结构之——队列详解

目录 前言&#xff1a; 一、什么是队列 二、队列的实现 2.1 队列结构 2.2 队列初始化 2.3 队列销毁 2.4 入队列 2.5 出队列 2.6 获取队列头部元素 2.7 获取队列尾部元素 2.8 获取队列中有效元素个数 2.9 检测队列是否为空 三、 代码总览 Queue.h test.c 四、例题 前言…

树莓派、ubuntu低版本python3安装库

如果遇到树莓派中自带低版本python3&#xff0c;又不想额外去安装python3时&#xff0c;可能会遇到版本过低&#xff0c;无法安装库的情况&#xff0c;以下用我实际情况举例解决方案。 本次遇到的问题是树莓派低版本中&#xff0c;python3为3.7.3&#xff0c;需要安装numpy&am…

Python专题:八、列表(1)

Python的内置数据类型 数据类型&#xff1a;列表 list类型 可以是字符串&#xff0c;浮点数&#xff0c;整数&#xff0c;列表 列表特性 ①集合性的数据类型 ②列表是有序的 ③列表是可更新的 访问列表元素的方式也是[索引]&#xff0c;也是从0开始的&#xff0c;不能超过…

EasyNmon服务器性能监控工具环境搭建

一、安装jdk环境 1、看我这篇博客 https://blog.csdn.net/weixin_54542209/article/details/138704468 二、下载最新easyNmon包 1、下载地址 https://github.com/mzky/easyNmon/releases wget https://github.com/mzky/easyNmon/releases/download/v1.9/easyNmon_AMD64.tar.…

GitLab CI/CD的原理及应用详解(一)

本系列文章简介&#xff1a; 在当今快速变化的软件开发环境中&#xff0c;持续集成&#xff08;Continuous Integration, CI&#xff09;和持续交付&#xff08;Continuous Delivery, CD&#xff09;已经成为提高软件开发效率、确保代码质量以及快速响应市场需求的重要手段。Gi…

Ansible-inventory和playbook

文章目录 一、inventory 主机清单1、列表表示2、inventory 中的变量3、变量3.1 主机变量3.2 组变量3.3 组嵌套 二、playbook剧本1、playbook的组成2、编写剧本2.1 剧本制作2.2 准备nginx.conf2.3 运行剧本2.4 查看webservers服务器2.5 补充参数 3、剧本定义、引用变量3.1 剧本制…

要将D-SUB电缆连接到工装接口和被测件接口

准备工作&#xff1a; • 确认D-SUB电缆的类型&#xff08;如DB9、DB25等&#xff09;与工装接口和被测件接口匹配。 • 检查电缆两端的接口是否完好无损&#xff0c;无弯曲针脚或损坏的屏蔽层。 • 确保工作区域整洁&#xff0c;避免灰尘或异物进入接口。 • 识别接口&…

河源知识付费系统报价,教育机构怎么进行网络推广呢?

中国教育培训领域的市场空间巨大。教育支出在中国已经超过其他生活费用成为仅次于食物的第二大日常支出。做好线上的营销推广成为了各大企业主思索的问题。其实对于教育行业的网络营销推广方式有很多种&#xff0c;其中大部分与其他行业的形式相同。教育机构怎么进行网络推广呢…