Skip to content

chiuchiuuu/CS50

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CS50

This is my repo contains courseware, notes, exercises when I am learning CS50 on edx. CS50 is really an excellent course for beginner:)!!!

Lecture notes, slides and descriptions of problem sets are copy from CS50 website. All of the problems sets are solved by myself and passed the test.

CS50是一门很好的计算机科学导论课,非常适合计算机科学入门,我在edx上完成了这门课程(没做结课项目)。我将这门课的讲座笔记,PPT,习题集等都保存到了这个仓库。由于精力有限,我只给习题集加了简单的中文描述,其余都是英文文档。另外,大部分作业都基于CS50的提供的一个库 cs50.h,在本地运行需要去官网下载头文件。

以下是每个讲座大致讲课的内容:

Lecture0

利用Scratch介绍编程的基本思想。很强的是第一节就把编程的基本概念都讲述了,变量,表达式,控制流,函数等等。作业时用Scratch做一个小游戏。我的作业

Lecture1

把上周在Scratch讲过的编程思想迁移到C上,然后介绍了CS50的IDE,库。

Lecture2

  • 如何调试
  • CS50作业的一些注意事项
  • 加密文本(Cryptography)
  • 字符串
    • 基本操作
    • 底层表示
  • 命令行参数

Lecture3

  • 简单的排序和搜索算法
  • 大O符号

Lecture4

  • 字符串的实现
  • 程序运行时的内存布局
  • 指针
    • char*
    • swap
  • 动态内存分配
    • 检测内存泄漏:valgrind
  • 图像的表示
    • bmp
    • jpeg

Lecture5

基础数据结构

  • 链表
  • 栈和队列
  • 哈希表
  • Trie树

Lecture6

计算机网络基础

  • HTTP
  • HTML
  • CSS
  • POST

Lecture7

机器学习基础

  • 图像分类
  • 最小邻近算法
  • 聚类算法

Lecture8

  • Python基础