国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

MIT 6.00 導論課程筆記(一)

2019-11-11 07:13:29
字體:
來源:轉載
供稿:網友

本次筆記是觀看網易公開課中麻省理工大學計算機科學導論課程Lecture01~04的內容之后得到的一些總結。

Lecture 01

Python

課程借助Python語言展開對于計算機科學與編碼的一些說明。 Eric介紹到,編程語言有三個維度:

低級的語言/高級的語言

低級語言如匯編語言更貼近于底層的物理實現,指令記憶復雜繁瑣;高級語言如Python更貼近于人類語言,記憶較為簡單。

通用的語言/特定的語言

通用的語言的意思是幾乎可以做所有事,包括完成計算,網絡通信,開發app等等;而特定語言是專為某一領域而設計的,如Matlab。

解釋型語言/編譯型語言

解釋型語言是由語言內置的一個解釋器逐行解釋代碼并進行執行,編譯型語言是由編譯器先將源代碼編譯成目標代碼(通常為匯編語言),然后再直接執行目標碼。

Python是高級的,通用的,解釋型語言。

Syntax, Semantics

Syntax中文意思是“句法,語法”,指的是編程語言所允許的合法的表達式表述,如果違反了該表述,則會提示“SyntaxError” 如

if x = 0:

會彈出

if x = 0: ^SyntaxError: invalid syntax

semantic中文譯解為語義,Eric區分了兩種semantics

static semantics

指的是在還未運行時程序代碼本身是否是meaningful的,這個解釋器會幫助你進行debug

full semantics

指的是在代碼運行時完全的語義,“what happens when run”,解釋器無法完全幫助你進行debug,需要自己對代碼進行邏輯判斷。

Lecture 02

type

python中“一切皆對象”,對象的type是可以改變的,所以type checking是十分重要的。

straight-line PRograms

直線型編程,程序完全串行執行

branching分支boolean表達:and or notloop/Iteration

因為我本人是有一定編程基礎的,所以我只記錄了對于我來說較為新的觀點和知識。

Lecture 03

tuple, list

tuple是元組,list是列表的意思

#tuplea = (1,2,3)a(1,2,3)#listb = [1,2,3]b[1,2,3]a[0]1b[0]1

Simulate code

手工模擬代碼可以選用flow chart(流程圖)的方式進行逐步模擬。

Defensive programming

防衛型程序設計,對所有可能的路徑進行設計。因為我們無法保證用戶輸入一個什么類型的東西,可能其輸入的并不符合我們的要求,所以必須進行全方位的思考。

Turing

Turing six primitives

占個坑,過一段時間再來更新

Tuting complete language

圖靈完備語言。 Python是圖靈完備的,圖靈完備的意思是運用該語言可以計算一切可計算的。 一般,只要包含下列結構,該語言就是圖靈完備的。

assignments 賦值語句conditions 條件input/output 輸入/輸出looping constructs 循環結構

Lecture 04

這門課的主要內容是Decomposition和Abstraction。

Function

將代碼分解為模塊化的代碼便于理解和再加工。一種常用的方法是函數。

break up into modules

supress details

new primitive

Recursion

遞歸是一種十分適合計算機的做法,它需要base case和inductive step。 接下來是代碼示例

#回文數palindrome def inPalindrome(s): if len(s)<= 1: return True else: return s[0]==s[-1] and inPalindrome(s[1:-1])#可以輸出縮進的回文另一種顯示def isP1(s, indent): print indent,s if len(s)<= 1: print indent,'start with...' return True else: ans = s[0]==s[-1] and isP1(s[1:-1],indent * 2) print indent, ans return ans#############################裴波那契def fib(x): if x == 0 or x == 1: return 1 else: return fib(x-1)+fib(x-2)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 玛曲县| 桃源县| 泸溪县| 乃东县| 长白| 贞丰县| 兴义市| 抚顺县| 通榆县| 韩城市| 伊金霍洛旗| 普兰店市| 兴城市| 湖南省| 新晃| 鄂州市| 盈江县| 应城市| 台北市| 保山市| 沂水县| 永川市| 万荣县| 罗平县| 柳河县| 南澳县| 惠州市| 凤山市| 佳木斯市| 泽州县| 固安县| 五大连池市| 安顺市| 大港区| 双柏县| 鱼台县| 阿荣旗| 鹰潭市| 贵港市| 永和县| 西城区|