科技

融入演算法,讓企業的數位轉型動起來!

Vendor Icon

CIO Taiwan

10月. 31, 2022

1200-2708_原寸立體書

程式設計的本質就是演算法,也就是以數學邏輯理解問題、解決問題的能力。這是一種通用於各個領域,且即使大環境發生變化(例如程式語言的改變)也依然適用的能力,在企業推動數位轉型(Digital Transformation)的過程中,這更是上上下下、從基層員工開始都不可或缺的關鍵之一。

文/旗標科技


們生活在一個具有空間與時間的世界裡,例如住家、道路、教室等,都是空間;而執行計畫,則體現時間的流動。而我們必須在這樣的空間、時間因素下,思考如何定義問題、解決問題,以達成各種目標。

[ 參與年度盛事 2023 CIO 大調查,就從填寫問卷開始!(survey.cio.com.tw) ]

達成目標所需的步驟,就是所謂的「演算法」。演算法是進行思考與決策的基礎,因此從日常生活、商業往來到研究開發,各種需要解決問題的場合,都能見到演算法的蹤影。演算法可以由人執行,還能藉由程式設計自動運行。而且電腦可以處理人腦無法輕鬆解決的複雜問題。因此演算法除了是資訊及通訊科技(information and communications technology,ICT)領域中最重要的學科與研究範圍之一,也應該讓基層員工都能學習,就像大學的通識教育一樣。

用電腦能處理的形式來描述問題

演算法是為了解決「問題」,例如圖 1 代表的就是資料排序的問題。而在電腦的世界中,要如實的描述問題,可將問題拆解成輸入和輸出狀態,如圖 2 所呈現的就是資料的存取狀態 (輸入與輸出資料)。

600-01
▲ 圖1
600-02
▲ 圖2

演算法就是有邏輯的執行步驟

演算法的目的在於有效地使用電腦資源,就像人類使用有限的資源一樣,可以針對資料在記憶體上的邏輯關係進行設計,將事物模組化,使計算更有效率。我們也可以將演算法視為是以邏輯關係(結構)為基礎,「使用空間結構的執行步驟」。

一般來說,演算法可以從四個面向來了解其特性,其關係如圖 3,後續我們再進一步解釋這四個面向:

  • 空間結構:資料之間的邏輯關係,等同是演算法的框架。空間結構有許多種類,如陣列、樹狀結構等,一般也是初學演算法的基礎(圖 4)。
  • 資料:利用空間結構來表示的值。演算法所處理的資料,如輸入值、中途結果和輸出值,藉由為記憶體命名並加上索引編號,可讓程式存取資料的「變數」及「陣列變數」,變數及陣列變數的值。
  • 時間結構:在空間結構中的處理流程。時間結構可將演算法計算過程中的每個步驟(或數個步驟)拆解開來,依序列出演算法的計算過程。每個步驟中空間結構的資料都會有所變化。
  • 計算:處理的內容及狀態,也就是電腦實際要執行的任務內容。
600-03
▲ 圖3
600-04
▲ 圖4

將「演算法」融入商業思維

在現實世界中,許多演算法已經被主流的程式語言編寫成方便使用的「函式庫」。不過「函式庫」也等同是將工作原理藏在內部的「黑箱」,因此大多數人在使用時不見得對其運作細節有充分的理解。

在企業推動數位轉型的過程中,我們需要將「數位」融入商業思維中,也就是要知道怎麼用電腦來解決問題,才能打造創新的商業模式,因此以往只有資通訊人才需要學習的演算法,搖身成為人人都需要具備的基礎知識,坊間許多「運算思維」、「邏輯思維」課程,本質上都歸屬演算法的範疇。

[ 加入 CIO Taiwan 官方 LINE Facebook ,與全球CIO同步獲取精華見解 ]

學習演算法並非是要基層員工人人都學會寫程式、設計軟體,而是要充分理解數位世界運行的邏輯,拋開程式語法、數學公式,其實演算法就只是一連串的規則而已,沒有想像中那樣神秘、可怕。《會動的演算法:61 個演算法動畫+全圖解逐步拆解,人工智慧、資料分析必備》一書,一圖一步驟地拆解演算法的背後原理,並搭配動畫的展示,將演算法的空間結構、時間結構完美呈現,可以活化思維並有效提升邏輯思考力!


(本文授權非營利轉載,請註明出處:CIO Taiwan)

內容來源

author avatar
CIO Taiwan
IDG集團的媒體品牌CIO於1987年創刊,為國際性最權威的IT管理專業雜誌。擁有全球最頂尖的IT管理專家作者群,因此能寫出最權威的分析評論、最先進的IT管理觀念。
donate plan

充電計畫

喜歡這篇文章嗎?歡迎幫作者充電,好內容值得更多人支持

瞭解詳情