日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

HighNewTech:一文了解计算机思维、数学思维的本质区别,以及算法和程序的认知比较

發布時間:2023/12/9 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HighNewTech:一文了解计算机思维、数学思维的本质区别,以及算法和程序的认知比较 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

High&NewTech:一文了解計算機思維、數學思維的本質區別,以及算法和程序的認知比較

導讀
? ? ??本文章論述均為知識分享和傳播,歡迎不同見解者,前來華山論劍、討論探究,求同存異!
? ? ??計算思維是一種遞歸思維,它是利用啟發式推理來尋求解答,是按照計算機科學領域所特有的解決方式,對問題進行抽象和界定,通過量化、建模、設計算法和編程等方法,形成計算機可處理的解決方案。而數學思維是人的大腦的思維,解決問題的方式是人腦所擅長的抽象、歸納、類比、推理、演繹和邏輯分析等計算思維同樣是人的大腦的思維,但解決問題卻是在數學思維的基礎上,運用計算機科學領域的思想、原理與方法,采用計算工具能夠實現的方式來進行。
? ? ??算法思想并不等同于計算思維,它需要考慮更加實際的“計算”問題。計算思維是一種抽象的思維活動,算法則是把這種思維活動具象化,描述成具體的方法與步驟。構建計算思維活動的基本要素是“由問題引發思維、由思維產生算法、由算法形成程序”。
? ??數學的抽象,在于剝離具體計算機思維的抽象,在于映射具體。?數學的抽象,全在于思維的目的和證明猜想的必要計算機思維的抽象,在于需要解決的問題和模擬的程度。有相似的地方,但最大的區別在于,計算機思維需要有生活的理解,有對現實問題的體驗經歷,個人的世界觀和品位生活的能力有所關聯。數學對現實要求不高,大數學家可以是瘋子,社交障礙,精神分裂,抑郁癥。但,計算機科學家頂多是個同性戀。
? ??總結,對的能證明的就是數學,對的不能證明的就是哲學(一旦證明了就又變成了數學),無法解釋的我們還有神學。

可以轉發,但禁止任何形式的直接粘貼復制!

?

?

?

目錄

關于計算思維

計算機思維 VS 數學思維

通過解題理解兩者區別

計算思維與算法及程序設計

抽象對比

邏輯

編程與數學

計算機中的比特

延伸


?

?

?

?

?

關于計算思維

? ? ? ?計算思維是運用計算機科學的基礎概念進行問題求解、系統設計、以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動,由周以真于2006年3月首次提出。2010年,周以真教授又指出計算思維是與形式化問題及其解決方案相關的思維過程,其解決問題的表示形式應該能有效地被信息處理代理執行。

? ? ? ?2006年3月,美國卡內基·梅隆大學計算機科學系主任周以真(Jeannette M. Wing)教授在美國計算機權威期刊《Communications of the ACM》雜志上給出,并定義的計算思維(Computational Thinking)。周教授認為:計算思維是運用計算機科學的基礎概念進行問題求解、系統設計、以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動

? ? ? ?計算思維吸取了問題解決所采用的一般數學思維方法,現實世界中巨大復雜系統的設計與評估的一般工程思維方法,以及復雜性、智能、心理、人類行為的理解等的一般科學思維方法
? ? ? ?計算思維建立在計算過程的能力和限制之上,由人由機器執行。計算方法和模型使我們敢于去處理那些原本無法由個人獨立完成的問題求解和系統設計。

? ? ? ? 計算思維中的抽象完全超越物理的時空觀,并完全用符號來表示,其中,數字抽象只是一類特例。與數學和物理科學相比,計算思維中的抽象顯得更為豐富,也更為復雜。數學抽象的最大特點是拋開現實事物的物理、化學和生物學等特性,而僅保留其量的關系和空間的形式,而計算思維中的抽象卻不僅僅如此。

? ? ? ?關于操作模式。計算思維建立在計算過程的能力和限制之上,由人由機器執行。計算方法和模型使我們敢于去處理那些原本無法由任何個人獨自完成的問題求解和系統設計。計算思維直面機器智能的不解之謎:什么人類比計算機做得好?什么計算機比人類做得好?最基本的問題是:什么是可計算的?迄今為止我們對這些問題仍是一知半解。

  • 計算思維是一種遞歸思維:它是并行處理。它是把代碼譯成數據又把數據譯成代碼。它是由廣義量綱分析進行的類型檢查。對于別名或賦予人與物多個名字的做法,它既知道其益處又了解其害處。對于間接尋址和程序調用的方法,它既知道其威力又了解其代價。它評價一個程序時,不僅僅根據其準確性和效率,還有美學的考量,而對于系統的設計,還考慮簡潔和優雅。
  • 計算思維利用啟發式推理來尋求解答:它是在不確定情況下的規劃、學習和調度。它就是搜索、搜索、再搜索,結果是一系列的網頁,一個贏得游戲的策略,或者一個反例。計算思維利用海量數據來加快計算,在時間和空間之間,在處理能力和存儲容量之間進行權衡。

? ? ? ?我們運用一個思維模型時,要經歷這樣三個階段:建模解模解釋。與之相對應的則是抽象思維、演繹思維、發散思維。通過抽象,形式化,將我們所需要研究的問題進行歸納,用一種范式表達出來,建立模型;然后通過嚴密的演繹推理,解出這個模型;最后,使用發散思維,將蘊含于這個模型中的意義用自然語言表述出來。

?

計算機思維 VS 數學思維

? ? ? ?數學思維的特征是概念化,抽象化和模式化,在解決問題時強調定義和概念,明確問題條件,把握其中的函數關系,通過抽象、歸納、類比、推理、演繹和邏輯分析,將概念和定義、數學模型、計算方法等與現實事物建立聯系,用數學思想解決問題。

? ? ? ?計算思維是按照計算機科學領域所特有的解決方式,對問題進行抽象和界定,通過量化、建模、設計算法和編程等方法,形成計算機可處理的解決方案。?

? ? ? ?對比后可以發現,數學思維是人的大腦的思維,解決問題的方式是人腦所擅長的抽象、歸納、類比、推理、演繹和邏輯分析等;計算思維同樣是人的大腦的思維,但解決問題卻是在數學思維的基礎上,運用計算機科學領域的思想、原理與方法,采用計算工具能夠實現的方式來進行。

?

通過解題理解兩者區別

? ? ? 比如求解S=1+2+3+……+ n。

? ? ? 數學思維,是對問題進行抽象和推理,歸納成自然數求和公式:S= n *(1+ n)/2 ,這種處理方式非常符合人類“依靠大腦進行運算”的特點。
? ? ? 計算思維,同樣是對問題進行抽象和推理,卻采用符合計算機工作特性、執行效率更高的“直接從1累加到n”的處理方式。 ? ? ? 這就是兩者區別!

?

計算思維與算法及程序設計

? ? ? 算法思想并不等同于計算思維,它需要考慮更加實際的“計算”問題。計算思維是一種抽象的思維活動,算法則是把這種思維活動具象化,描述成具體的方法與步驟。

? ? ? 程序設計則是算法在計算機上的正確實現,它是計算思維的最終結果
?? ? ?例如同樣的問題:求解:S=1+2+3+……+ n。

  • 計算思維:通過計算思維可以得到“直接從1累加到n”的解決方案;
  • 算法:算法則要考慮采用何種方法、通過何種步驟來實現這個方案,比如,如何輸入與輸出,怎樣用循環實現累加等;
  • 程序設計:程序設計是將算法所描述的方法與步驟轉換成計算機所能理解和操作的指令代碼,比如使用“For/Next”語句進行循環、用“S=S+i”賦值語句實現累加等,使程序能夠在計算機上運行并獲得正確結果。

? ? ? 由此看來,數學思維是計算思維的基礎,計算思維是解決問題的一種思考方式,算法是對計算思維的具體設計,程序設計則用于實現算法設計

? ? ? 綜上所述,構建計算思維活動的基本要素是“由問題引發思維、由思維產生算法、由算法形成程序”,它是體現計算思維的關鍵,是人腦的獨立思考活動,所形成的問題解決方案是多樣的,并且不受編程語言的限制,也就是我們所說的“一個問題可以有不同的解決方案,一個方案可以有不同的算法設計,一個算法可以用不同的編程語言來實現”。因此,在教學中應該著重體現利用計算思維解決問題的完整過程,而不是單一的教會學生某種編程語言

?


? ? ?計算機思維和數學思維,都包括了抽象邏輯

抽象對比

? ? ? ?數學的抽象,在于剝離具體。數學研究從公理出發,可以變成純思維的活動,和具體的的現實脫離關系。數學上的人為"定義",就是為了盡可能給出范圍明確,不冗余的信息抽象。以后在利用這些信息,得出范圍明確不冗余的抽象信息(證明的過程),如此反復。可見這里,數學需要的是一個自洽信息結構和關系。這些信息是架空具體和現實的。雖然,數學在極力的尋找關系,但這個行為發生在圈定好的有限范圍內,由層層已知的定理和定義的護欄內

? ? ? ?計算機思維的抽象,在于映射具體。計算機是用來模擬現實和解決現實問題的。所以,計算機思維是和現實極為緊密的,而現實的關系是錯綜復雜的。我們無法避免信息冗余,亂入的信息隨機出人意料的自由組合。這也是為什么,數學正確和錯誤清晰而明確。計算機無法保證正確,只能說目前沒有錯誤,bug永遠存在需要不斷的修復。現實變化了,計算機的思維模型就要跟著變化。

? ? ? ?數學的抽象,全在于思維的目的和證明猜想的必要計算機思維的抽象,在于需要解決的問題和模擬的程度。有相似的地方,但最大的區別在于,計算機思維需要有生活的理解,有對現實問題的體驗經歷,個人的世界觀和品位生活的能力有所關聯。數學對現實要求不高,大數學家可以是瘋子,社交障礙,精神分裂,抑郁癥。但,計算機科學家頂多是個同性戀。

?

邏輯

? ? ? 關于邏輯。其實,邏輯就是事物之間的關系,而掌握了關系的觸發條件,就被看成規律。為什么按照邏輯,應該是這樣的,為什么你的邏輯是對的,我的邏輯就是錯的。就是因為邏輯本質的關系是物質固有的,在相同的環境和姿勢條件下,關系所呈現的規律被觀察,被體驗,被總結,理解并記住。每每當我們對規律有了新的認識,相當于重新定義了關系,過去的邏輯就會被推翻,建立新的邏輯。邏輯推理,就是對關系的猜測,猜對了關系就是規律,猜錯了就是毫無邏輯

? ? ?數學研究結構和關系,而現實世界就是由結構和關系構成。這里就是有意思的地方了,現實是完美運行的結構和關系,數學是在人腦里模擬探索的結構和關系。所以,數學是計算機科學的工具。當計算機科學在某個方面無法抽象和映射了,就需要等待數學同步意淫出來和現實世界一樣的結構和關系。比如人工智能就是。 現實在隨機發展,數學在隨機猜想,而數學又是現實的一部分,這又像是計算機運行的原理,充滿了遞歸。人腦像個計算機,人腦也像個宇宙,宇宙發明了人類,人類發明了計算機,人類能否用計算機遞歸發明人腦。現在不就在這個方向發展么?

? ? ?計算能力不是產生智能的本質原因(這句話,博主非常贊同!)。人類大腦的計算能力有限卻有邏輯推理能力。目前計算機的運算能力遠遠超過人類的運算能力,卻無法產生類似的學習和邏輯推理能力。但有一點計算機和人腦是一致的,就是信息通過二進制0和1(比特)來存儲傳遞和表達。算法和結構有一個關系,就是結構越復雜算法就可以越簡單,結構越簡單那么算法就需要越復雜。所以,人類大腦的智能是因為大腦的結構非常復雜。對比計算機的結構如此的簡單,是把復雜的算法都轉移到了程序設計上面,也就是讓人類的大腦來產生。未來人工智能能夠像人類靠近的話,需要的不是計算能力而是一個復雜的硬件結構。并且人類的邏輯思維和智能的演變和人類使用的語言密切相關,所以人工智能也是需要配套的和人類語言差不多的編程語言出現(這就是博主說過的,走向AGI必須要有創新性的定義)。當然,這都是我的猜測和理解,是思考人類智能本身產生的,不排除計算機本身發展出有別于人類智能模式的智能,比如變形金剛。

?

編程與數學

? ? ?關于編程和數學的問題。雖然,數學是計算機的工具,在思維的本源上有相似和共同性。但是,學習和掌握一個技能需要練習和時間,需要在大腦中訓練出特定的結構。縱然有了相同的基礎結構,但是要想做的更好發展的更好需要的是訓練和時間

? ? ?縱然,數學是工具是基礎是上層的依賴。并不是說,數學高于一切,優于一切是最強大的。最基礎的并不是最強大的,是最必要的最開始的。比如,沙子是建筑的基礎但不能代表建筑的價值。無機物是有機物的基礎,有機物是生命的基礎,但生命的價值放在那里。發展的過程,環環相扣,關系的道路上誰也少不了誰。基礎代表必要,發展才是未來

?

計算機中的比特

? ? ?比特是信息的基本單位,結構和關系是信息的屬性。計算機的偉大之處,就是在于創造了比特的概念,又開始用比特去描述世界,萬物皆比特。

? ? ? 結構是固有存在的,是信息的排列組合。關系是觀察者從某一個角度看到的排列組合,并且這個角度看到的是可以被觀察者所理解的。這里的理解包含可感知,有些物質的排列組合所呈現出來的關系無法被感知(可展開想象)。所以不同的角度看相同的結構會有不同的關系。

?

延伸

? ? ?總結,對的能證明的就是數學,對的不能證明的就是哲學(一旦證明了就又變成了數學),無法解釋的我們還有神學

?

?

參考文章
百度百科—計算思維
計算機思維,數學思維,本質的區別
從一道題目的解法看數學思維、計算思維、算法及編程之間的關系

?

?

?

?

總結

以上是生活随笔為你收集整理的HighNewTech:一文了解计算机思维、数学思维的本质区别,以及算法和程序的认知比较的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。