首页 > 其他分享 >计算机科学基础班

计算机科学基础班

时间:2022-11-16 17:23:37浏览次数:42  
标签:函数 递归 实现 计算机科学 基础 链表 数据结构

教学对象

本课程教学对象为作者本人

教学语言

本门课程采用的教学语言是chez schemeJavascript, 在学习中相互对比,学生将从0开始,学会计算机科学中最核心的思想,从无到有创建各种重要的概念。

教学内容

前言:

我们首先需要明白一些基本的概念,比如符号,表达式,变量,问问题这些基础的概念, 我认为这是这些基本的概念将会构成计算机世界的参天大数。

第一课 函数

我们将会在一开始就会说函数,关于函数只有很少几个知识点,但是它们却是核心的知识,只知道很少的知识点的时候,对它们才能够反复的练习。

第二课 递归

递归可以说是计算机科学(或数学)最重要的概念, 我们将从最简单的递归函数开始,引导理解递归的本质,掌握对递归进行系统化的思考。

第三课 链表

链表:从0开始,学生将不依赖任何语言的特性实现,最基本的数据结构,第一个数据结构就是链表,学生会在练习中实现许多操作链表的函数,这些函数经过精心的挑选,很多是函数式编程语言中基本的函数,但是通过独立的将它们写出来,学生掌握的是递归的系统化思路,这使得他们能自如的对这类数据结构进行思考,解决新的问题。

与一般的数据结构课程不同,这个课程实现的大部分都是 「函数式数据结构」 ,它们具有一些特别的有用的性质,因为它们的逻辑结构清晰,比起普通的数据结构书籍会更加容易理解。

不会宗教式的强调纯函数的优点,而是客观的让学生领悟这其中的优点,并发现它们的弱点。

学会这些结构,在将来也会容易的推广到非函数式的结构,把两种看似不同的风格有机的结合在一起。

第四课: 树结构

从链表逐渐推广出更加复杂的数据结构---树,在后来的内容中,会常常使用到这种结构,树结构可能是计算机科学中最常使用,最复杂的数据结构了,

第五课: 计算器

在熟悉了树的基本操作之后, 实现一个比较高级的计算器,它可以计算任意嵌套的算术表达式,算术表达式是一种语法树,

第六课: 查找结构

理解如何实现key-value查找结构, 并且亲自实现了两种重要的查找数据结构

第七课:解释器

利用之前打好的基础,亲手实现计算机科学中最重要,也是通常认为最难理解的概念--解释器

第八课:类型系统

实现一个相当高级的类型系统和类型检查器

关于面向对象的本质, 理解编程的智慧

实现面向对象的基本概念, 甚至是完全掌握

标签:函数,递归,实现,计算机科学,基础,链表,数据结构
From: https://www.cnblogs.com/zhengel/p/16896616.html

相关文章

  • CSS语法格式和CSS_选择器_基础选择器
    CSS语法格式:格式∶选择器{属性名1:属性值1;属性名2:属性值2;}选择器:筛选具有相似特征的元秦注意:每一对属性需要使用;隔开,最后一对属性可以不加;   CSS_选......
  • C#多线程(一)线程基础篇
    C#多线程(一)线程基础篇 线程基础视频已经发布到B站参考文章:《ThreadinginC#》(JosephAlbahari)https://www.albahari.com/threading/《ThreadinginC#》中文翻......
  • CSS_选择器_基础选择器与CSS_选择器_扩展选择器
    CSS_选择器_基础选择器选择器:筛选具有相似特征的元素分类:1.基础选择器......
  • python 基础操作 plus
    将python列表中的多个列表转化为一个列表:列表的扁平化处理总结方法一:使用itertools#速度最快importitertoolsa=[[1,2,3,4],[4,4,5,6],[7],[7,8,......
  • 一些基础的笔记Easy_Maths
    EasyMaths排列组合:剩余法对等法R进制整数表示:除以基数R,取余,逆序写下R进制小数表示:乘以基数R,向下取整,顺序写下反码补码原码:反码=绝对值负数符号位不动,其余按位取......
  • 基础树状数组
    树状数组:利用数组下标的二进制关系,构造一种类似于树形的结构,有点像一个变成树形的前缀和可以实现单点修改、区间修改、区间查询等操作2的整数n次幂的位置就是表示该位置......
  • 测试基础内容
    软件的测试对象程序+文档+数据 什么是软件测试使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求,并找出被测系统与预期结果之间的差......
  • 08基础元器件-热电偶、热敏电阻
    一、热电偶工作原理如果两种不同成分的均质导体形成回路,直接测温端叫测量端,接线端子端叫参比端,当两端存在温差时,就会在回路中产生电流,那么两端之间就会存在Seebeck热电势,......
  • 内网穿透方案&FRP内网穿透实战(基础版)
    目录前言方案方案1:公网方案2:第三方内网穿透软件花生壳cpolar方案3:云服务器做反向代理FRP简介FRP资源FRP原理FRP配置教程之SSH前期准备服务器配置......
  • CPU乱序执行基础 —— Tomasulo算法及执行过程
    IBM360/91浮点单元最先实现Tomasulo算法从而允许乱序执行。360体系只有4个双精度浮点寄存器,限制了编译器调度的有效性。而且,IBM360/91的访存和浮点延迟都很长,如果顺序执......