04 - Data Structure & Network and Security

04 - 数据结构 & 网络及安全

我们接下来还会介绍注诸如HTML/CSS/JavaScript、PHP、SQL等等语言...

但不会很深入...所有的for循环if语句都很类似,深入下去的不一样都只有库的差异

1. 数据结构

需要格外注意,在进行数据结构的操作时,注意不要进行越界操作。

1.1. 链表:数组实现

  • 数据域data

  • 指针域next

链表的指向非常重要。否则会发生内存泄漏 memory leak。

老师的讲课方式也是出奇有趣。和学生互动很多。

  • 讲解了链表节点的遍历、插入、删除

1.2. 队列:结构体

  • pop操作

  • push操作

吃得真好啊...

FIFO, first in first out

1.3. 栈

LIFO, last in first out

1.4. 树 & 图

本质还是链表

1.5. 哈希表

浅浅介绍。查找复杂度为O(1)的神奇数据结构.......

1.6. 比特位

操作符:&, ^......

进制转换:Bin - Hex - Dec

2. 哈希函数

2.1. 哈希方法

主要是一个加密和解码的方法。

前移后写字符,后移某些字符。

散列表...

2.2. 哈希冲突

有些时候会产生哈希冲突,在高频率情况下。可以考虑使用分离链表连接。

3. 网络编程

数据传输是一跳一跳进行传递的。举个例子,十跳的数据,经过了十个路由器,可能会经过7ms......而且每次的数据传递,

3.1. TCP/IP

一种计算机标准。网络分层。详情请收看...CS143

网络的传输实际上就是包的传输,包就是数据。更重要的是制定出协议和标准,使得传输的信号可以被看懂!

形式:xxx.xxx.xxx.xxx

中央为所有终端分配地址,只要知道目标的地址就可以实现从A端到B端。

3.2. HTTP 与 SSH

互联网协议、安全外壳

HTTP 可以进行数据的请求。

诸如:

  • User-Agent

  • Host

  • Accept...

3.3. 路由器和网关

路由器转发数据,连接不同的交换机,交换机可以实现两机的数据交换。

4. Web Page

4.1. PHP 语言

实际上是一个真正的编程语言,具有函数具有逻辑...

PHP 和 C 其实很像,可以进行逐行翻译。

4.2. URL

每个网页的连接。包含了特定的域名

4.3. HTML、CSS

老师居然带着从 0 开始敲...简直是学生的福音啊。说白了就是让学生尝试不同的领域。从前面的 C语言 源码编程,到游戏,到算法...到前端,一直在探索学生喜欢的领域...这才是学校吧

HTML:

  • 标记语言。记住这样的符号,<>。就好了。其他的再深入学习吧。

  • 迭代版本:HTML5

CSS:

  • 可以改变标记语言的默认样式

  • 我们称之为属性。

  • 可以处理从字体到边框...

4.4. JS

与用户进行交互。

考虑用户的体验,计算机本质还是一个与用户交互的工具。

通过运行 JS 来监听用户行为。

4.5. PHP 代码

PHP 代码审计 据我所知也是一个很热门的网安方向。

有机会有空的时候可以学一下哈。这里老师也是一笔带过,把PHP嵌入到HTML里讲解了一下例子。

4.6. 静态网页 和 动态网页

静态网页:

  • 是一种简单的HTML文件,通常以 .html 或 .htm 为扩展名。

  • 页面内容是预先编写好的,存储在服务器上,每次用户请求时,服务器直接将页面内容发送给用户,不会根据用户的输入或数据动态生成内容。

  • 适用与小访问量的网站...一些以信息浏览为目的的网站

动态网页:

  • 是通过服务器端脚本(如PHP、ASP.NET、Python、Java等)生成的网页。

  • 页面内容不是预先固定的,而是根据用户的请求、数据库查询结果或其他动态数据实时生成的。

5. 图像处理

图像的分辨率...响应式设计。

  • 布局设计。

  • 色彩算法

  • 模糊度...

  • 像素处理...

    • 边缘检测...

    • 等等

  • PhotoShop

6. 网络安全

盗取无线电通讯工具

为了防御:

  • 进行了网络的工作加密

6.1. IP 摄取

VPN 来进行代理访问。

6.2. 浏览器

会缓存 Cookie

So when you log out...depend on your Browser浏览器的 Cookie...

6.3. APIs

程序接口...很多公司和学校会提供一些有趣的API...同学们感兴趣的可以多多尝试。

7. 穿插

7.1. 文件的损坏和恢复

图片的损坏:某些比特位置的数据丢失 anyway...如果需要恢复,可以使用周围的像素值进行恢复。

7.2. SFTP

安全文件传输协议 提供加密传输服务.......

7.3. 转义字符

\r,\n...等等,因操作系统不同而有区别

7.4. 关于 空 NULL

NULL、0、‘0’、‘\0’也有区别。

7.5. 展示了优秀结业项目

类似学校的官网:查看所有老师和评价.......

结课项目研讨小组。不错不错。

7.6. CS 50之夜

提供交流平台,在课程即将结束的时候...所有助教会出席...

Last updated