8000 GitHub - fangtaoysu/CS61A: UCB cs61A
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

fangtaoysu/CS61A

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 

Repository files navigation

CS61A

UCB cs61A官网

介绍

第一门课程是Berkeley的基于Python语言的SICP(计算机程序构造与解释)。该课程是Berkeley大一新生的第一门计算机课程,CS61A介绍了编程和计算机科学,重点是抽象技术作为管理程序复杂性的手段。

技术包括

  • 过程抽象;
  • 使用递归、高阶函数、生成器和流控制抽象;
  • 使用接口、对象、类和泛型操作符进行数据抽象;
  • 使用解释器和宏进行语言抽象。
  • 提供编程范例,包括函数式、面向对象和声明式方法。

课程安排

第一周:

  • 课程介绍
  • 学习Python的变量和函数

第二周:

  • 学习Python的分支语句和while loop
  • 学习高阶函数,基于函数的编程

第三周:

  • 高阶函数,lambda表达式
  • 抽象函数

第四周:

  • 学习递归
  • 学习高级递归Tree Recursion

第五周:

  • 学习序列
  • 学习容器
  • 学习抽象数据

第六周:

  • 学习数据结构-树
  • 学习数据结构的可变性
  • 学习迭代器

第七周:

  • 学习生成器
  • 学习类-对象
  • 学习类-属性

第八周:

  • 学习继承
  • 学习面向对象-字符串表示
  • 学习面向对象编程

第九周:

  • 链表

第十周:

  • Tree的递归

第十一周:

  • 学习Scheme编程语言的函数和运算,Scheme这门语言比较像racket语言(这门语言在芝加哥大学,滑铁卢大学等大学会学习)
  • 学习Scheme的list,链表,map,filter等方法
  • 学习程序的编译原理

第十二周:

  • 学习Scheme的lambda
  • 学习尾递归
  • Python的模块和包

第十三周:

  • 学习Scheme的pair
  • 学习Scheme的面向对象编程,二叉树
  • 学习Scheme的evel,apply
  • 学习Scheme的宏

第十四周:

  • 学习正则表达式
  • 学习SQL语句

第十五周:

  • 学习web程序的原理
  • 学习更复杂的树的问题

第十六、十七周:

  • 假期,期末考试

存在问题

没有理解

# hw03
def count_coins(total)
def move_stack(n, start, end)
def make_anonymous_factorial()
# lab03
def div_by_primes_under(n)

参考文章

Releases

No releases published

Packages

No packages published
0