1. Turing machine:图灵机

    理论上可以计算任何东西

  2. CPU(Center Process Unit):中央处理器

    是现代电脑的“大脑”,其中包含数十亿细小开关的硅片,即晶体管

  3. Transistors:晶体管

    每个开关代表一个“位”

  4. Bit:位

    是电脑能够识别的最小信息

  5. Byte:字节

    每 8 个位一组,称为一个字节

  6. ASCII character encoding:美国信息交换标准代码字符编码

    键盘输入的字符按照 ASCII 的规则转换成一串特定的二进制编码

  7. Binary:二进制

    一种特殊的计数方式,由 0 和 1 构成,遵循“逢二进位”的规则

  8. Hexadecimal:十六进制

    由 0~9 以及 a~f 表示一个组合,称为“半字节”

  9. Nibble:半字节

  10. Machine code:机器码

    将编程语言转为及其能够识别的语言,即 0 和 1 构成的字符串,从而告诉机器“怎么做”,但并不保存“做的结果”

  11. RAM(Random Access Memory):随机存储器

    机器处理指令的空间

  12. Memory address:内存地址

    标记 RAM,CPU 通过内存地址来读写数据

  13. I/O(Input/Output):输入输出

    处理输入输出

  14. Kernel:内核

    应用程序通过内核控制电脑硬件

  15. Shell:壳

    包裹着内核,是与计算机核心交流的接口

  16. CLI(Command Line Interface):命令行界面

    在此通过 Shell 与内核进行交流

  17. SSH(Secure Shell Protocol):安全壳协议

    通过该协议即可与本地或者远程计算机进行交流

  18. Mainframe:主机

    bulk data processing computer:批数据处理计算机

  19. Programming language:编程语言

    帮助人类与机器进行沟通的语言,如 C/C++ 语言、Java 语言、Python 语言等

  20. Abstraction principle:抽象原理

    编程语言用抽象的原理,逐步方便人类与机器交流

  21. Interpreter:解释器

    逐行执行编辑好的代码

  22. Compiler:编译器

    编译器将所有代码全部编译后由 CPU 逐步执行

  23. Executable:可执行文件

    .exe 文件

  24. Data types:数据类型

    编程语言中描述数据的“工具”,如整型、浮点型、字符串型等

  25. Variable:变量

    数据的命名,在使用数据前,需要声明一个变量来表示该数据

  26. Dynamically typed:动态类型

    Python 是一种动态类型的语言,声明变量时无需指定数据类型

    number = 100
  27. Statically typed:静态类型

    C 语言是一种静态类型的语言,声明变量时必须指定数据类型

    int number = 100;
  28. Pointer:指针

    是一个特殊的变量,其值为另一个变量(可以是指针)的内存地址,可以通过指针对底层内存进行控制

  29. Garbage collection:垃圾回收器

    实现了垃圾回收的机制,程序中不再被引用的对象称为“垃圾”,需要从内存中清除实现内存的释放,即“垃圾回收”

  30. int(Integer):整型

    表示整数的数据类型,可以表示正数(无符号)、负数(有符号)

  31. Signed:符号

    辅助 int 区分值的正负性

  32. Floating point:浮点

    表示浮动的小数点

  33. double:双精度浮点数

    相比 float 浮点数数据类型具有更高的精度,可以提供更大范围的精度

  34. char:字符

    表示字符的数据类型

  35. string:字符串

    表示字符串的数据类型

  36. Big endian:大 字节存储次序

    先到先进

  37. Little endian:小 字节存储次序

    先到后进

  38. Data structures:数据结构

    数据的存储关系

  39. Array:数组

    含有一列数据的数据结构,从 0 开始索引

  40. Linked list:链表

    含有一列数据的数据结构,每个数据仅知道自己前后的数据(通过指针实现),并不清楚自己的次序

  41. Stack:栈

    链表的一种,遵循“后进先出”的原则

  42. Queue:队列

    链表的一种,遵循“先进先出”的原则

  43. Hash:哈希

    又称为 map、dictionary,类似数组,但使用独一无二的标签或关键字进行索引(key:键)

  44. Tree:树

    像树形的数据结构,按层级将各个数据节点组织起来,类比家族树

    graph TB
    太爷爷-->爷爷 & 叔公
    爷爷-->伯父 & 爸爸 & 叔叔
    爸爸-->我
  45. Graph:图

    多个数据节点无序联系的数据结构,类比社交网络

    graph LR
    张三-->李四
    -->王五
    -->张三
    -->赵六
    -->李四
  46. node:节点

    edge:边

    节点是图中的各个数据,边是任意两个节点之间的存在的联系

  47. Algorithm:算法

    用来解决问题的方法

  48. Function:函数

    可以完成接收输入、处理输入、返回输出的代码块

  49. Return:返回

  50. Arguments:参数

    分为实参和形参,在原始主程序中的变量为实参,在函数中临时使用的变量为形参

  51. Operators:操作符

    如大于号、小于号、等于号等

  52. Boolean:布尔数据类型

    其值分为 true 和 false

  53. Expression:表达式

    对于代码产生值的代码可称为表达式

  54. Statement:语句

    未产生任何值而是完成操作的代码称为语句

  55. Conditional logic:条件逻辑

    if(condition) {
    statement;
    } else {
    statement;
    }
  56. While loop:while 循环

    while(condition) {
    statement;
    }
  57. Iterable:迭代器

  58. For loop:for 循环

    for(condition 1; condition 2; condition 3) {
    statement;
    }
  59. void:空函数

    没有返回值

  60. Recursion:递归

    函数调用自己,如同镜中镜

  61. Call stack:调用栈

  62. Stack overflow:栈溢出

    存入的内容超出栈的空间导致从栈中溢出

  63. Base condition:基本条件

    控制 for 循环的结束条件

  64. Big-O notation:大 O 表示法

    用于估算算法在大规模应用时的表现

  65. Time complexity:时间复杂度

    算法执行速度

  66. Space complexity:空间复杂度

    算法使用空间

  67. Brute force:暴力法

    一种算法,强行暴力尝试所有可能,直至找到答案

  68. Divide & Conquer:分治法

    一种算法,将问题分成若干部分,分别解决,最终解决大问题,如二分查找

  69. Dynamic programming:动态规划

    一种算法,将问题分成若干部分,每次处理的结果会存储起来,采用 memonization 技术

  70. Memonization:记忆化

  71. Greedy:贪心算法

    一种算法,选择短期内最有益的选择,而不考虑整体问题的最优解

  72. Dijkstra's shortest path:Dijkstra 最短路径

    一种贪心算法

  73. Backtracking:回溯算法

    一种算法,采取逐步的方法,查看所有可能的选项

  74. declarative:声明式编程

    向计算机说明需求,而不过多指定具体步骤

    举例,使用 Haskell 编写 Fibonacci 算法

    fib :: Integer -> Integer
    fib 0 = 0
    fib 1 = 1
    fib n = fib (n-1) + fib (n-2)
  75. Functional languages:函数式语言

  76. Imperative:命令式编程

    向计算机详细解释每一个步骤

    举例,使用 C 编写 Fibonacci 算法

    int fib(int n) {
    int a = 0, b = 1, c, i;
    if(n == 0) {
    return a;
    }
    for(i = 2; i <=n; i++) {
    c = a + b;
    a = b;
    b = c;
    }
    return b;
    }
  77. Procedural languages:过程式语言

  78. Multiparadigm languages:多范式语言

    如 Python、JavaScript、Kotlin

  79. Object-oriented:面向对象编程

    使用类为代码中的数据或对象编程

  80. Class:类

    对象的属性、方法的模板

    class Person {
    int age = 20;
    void getAge() {
    cout << this.age;
    }
    }
  81. Property:属性

    int age = 20;
  82. Method:方法

    void getAge() {
    cout << this.age;
    }
  83. Inheritance:继承

    类通过继承来共享行为,子类可以在保留父类行为的基础上进行扩展和重写

    class Father:
    pass class Son(Father):
    pass
  84. Design patterns:设计模式

  85. Instantiate:实例化

    类在使用时需要实例成对象

    class Person {}
    
    int main() {
    Person Tom = new Person();
    }
  86. Heap:堆

    一种独立的内存区域,用于长时间存储数据,以方便多次调用。堆的大小可以根据应用的使用情况进行自由扩展和收缩

  87. Reference:引用

    堆允许通过引用在不同的变量之间传递对象

    const person = {
    age: 20,
    } const person1 = person
    const person2 = person
  88. Threads:线程

    线程的作用是将实际的 CPU 核心分割成虚拟核心,使其能够同时运行多段代码

  89. Parallelism:并行处理

    可以编写能够在两个不同线程上同时执行的代码

  90. Concurrency:协程

    可以暂停或延迟代码的正常执行,以便在单个线程上同时处理多个任务

  91. Bare metal:裸机

  92. Virtual machine:虚拟机

    模拟硬件的软件

  93. IP address:IP 地址

    每台机器都有一个独特的 IP 地址,以在网络进行标识

  94. URL(Uniform Resource Locator):统一资源定位器

    IP 地址会被映射成 URL

  95. DNS(Domain Name System):域名系统

    IP 地址映射成的 URL 会在域名系统中进行注册

  96. TCP(Transmission Control Protocol):传输控制协议

    两台计算机通过 TCP 握手建立连接

  97. Packets:包

    建立连接的计算机之间可以交换数据包来传递消息

  98. SSL(Secure Sockets Layer):安全套接层

    加密和解密网络上的消息

  99. HTTP(HyperText Transmission Protocol):超文本传输协议

    两台计算机可以通过 HTTP 安全地共享数据

  100. API(Application Programming Interface):程序编程接口

    一种标准化的数据请求方式,最常见的架构是 REST

  101. Printers:打印机

-End-

CS101的更多相关文章

  1. Intro to Computer Science Class Online (CS101) - Udacity

    Intro to Computer Science Class Online (CS101) - Udacity Building a Search Engine

  2. 转一下关于struct字对齐的原因

    作者:張道遠链接:https://www.zhihu.com/question/27862634/answer/38506197来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  3. c++怎么将一个类,拆分出接口类,和实现类

    还拿上一遍中定义的GradeBook类来实现: #include <iostream> using std::cout; using std::endl; #include <str ...

  4. c++l类

    c++类和C#中定义类的方法异同之处: 1. 相同处: 1.1.都需要使用 class标识: 1.2.都包含有成员:函数,属性: 1.3.都有private public protect 标识的成员 ...

  5. 七行jquery代码实现图片渐变切换【兼容ie6+、 Chrome、 Firefox】

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. 无责任共享 Coursera、Udacity 等课程视频

    本文转载自网络,原作者不详. (本文是用 markdown 写的,访问 https://www.zybuluo.com/illuz/note/71868 获得更佳体验) 程序语言 interactiv ...

  7. Nitrous.IO融资665万美元 帮助开发者省去配置调试等工作-CSDN.NET

    Intro to Computer Science Class Online (CS101) - Udacity Building a Search Engine Nitrous.IO融资665万美元 ...

  8. Rabin-Karp【转载】

    问题描述: Rabin-Karp的预处理时间是O(m),匹配时间O( ( n - m + 1 ) m )既然与朴素算法的匹配时间一样,而且还多了一些预处理时间,那为什么我们还要学习这个算法呢?虽然Ra ...

  9. 基于 MySQL 的数据库实践(准备工作)

    背景 本学期在北京大学选修了<数据库概论>的实验班课程,由于 SQL 语法并不是特别理论的内容,因此课上暂时也没有特别展开.出于探索数据库领域的兴趣,使用国内普遍使用的数据库软件 MySQ ...

  10. 基于 MySQL 的数据库实践(自然连接)

    在基本查询一节的示例中,我们有从 instructor 和 teaches 表组合信息,匹配条件是 instructor.ID 等于 teaches.ID 的查询,ID 属性是两个表中具有相同名称的所 ...

随机推荐

  1. Arrays.asList的坑

    Arrays.asList 方法的坑 此方法接受可变个数的参数 构建一个ArrayList 可此ArrayList 非彼ArrayList ,他返回的是 Arrays 的一个内部类,实现了Abstra ...

  2. 告别os.path,拥抱pathlib

    pathlib 模块是在Python3.4版本中首次被引入到标准库中的,作为一个可选模块.从Python3.6开始,内置的 open 函数以及 os . shutil 和 os.path 模块中的各种 ...

  3. Python 动态网页Fetch/XHR爬虫——以获取NBA球员信息为例

    Python 动态网页Fetch/XHR爬虫--以获取NBA球员信息为例 动态网页抓取信息,一般利用F12开发者工具-网络-Fetch/XHR获取信息,实现难点有: 动态网页的加载方式 获取请求Url ...

  4. 基于ADS1299的可穿戴设备调试之接口含义简析

    前言    几个项目都用到了ADS1299,没想到中间会出那么多的问题.在解决问题的时候,这里面暴露了团队的不少不足之处.看来做技术,还是需要不断地积累.思维不能留盲点啊.要经常总结,做笔记.   接 ...

  5. java中float内存存储原理

    规格化表示: 浮点数采用的是IEEE Standard 754 Floating Point Numbers标准 float占用4个字节,和int一样,也是32bit. 第1个bit表示符号,0表示正 ...

  6. Android13源码下载环境搭建

    由于AOSP的下载&编译等工作,需要用到git与python的支持,所以需要提前安 装好 VMware解决Ubuntu不占满全屏问题和Windows复制粘贴问题 https://blog.cs ...

  7. 大场景的倾斜摄影三维模型OBJ格式轻量化处理处理关键处理技术分析

    大场景的倾斜摄影三维模型OBJ格式轻量化处理处理关键处理技术分析 大场景的倾斜摄影三维模型是指通过航空或地面摄影获取的大范围.高分辨率的地理环境数据.为了在虚拟环境中加载和渲染这些模型,需要对其进行O ...

  8. 记录--优雅解决uniapp微信小程序右上角胶囊菜单覆盖问题

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 大家好,今天聊一下在做uniapp多端适配项目,需要用到自定义导航时,如何解决状态栏塌陷及导航栏安全区域多端适配问题,下文只针对H5 ...

  9. Moe RE - 【bugku】

    发现好像没人写wp,虽然很简单但是写一个.... 题目 分析 下载文件打开,习惯首先丢到Exeinfo PE里看看有没有壳 没有壳的样子 那放心丢到IDA(64-bit)里面 一进去就看到很有嫌疑的字 ...

  10. SpringBoot项目 前后端分离 ajax附件上传下载

    前台界面 上传 下载 前台代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht ...