# 演算法基本概述 演算法就==是一段被定義好的、電腦可以按照指示的步驟和流程== ## 呈現 演算法可以透過許多方式呈現 例如 1. 流程圖 ```mermaid graph TD; 你是不是甲 -- 是 --> say(u r gay) 你是不是甲 -- 不是 --> print(u still gay) ``` 2. 虛擬碼 ``` if you is gay: print "u r gay" else print "u still gay" endif ``` ## 特性 演算法有幾個基本規範(或者說特性) 1. `有效性`:必須是泛用性的思路,不能換一個環境就無法成立 2. `有限性`:必須在有限的步驟內完成 3. `明確性`:每一個步驟需要明確不能有歧義 4. `I/O`: 必須定義輸出入,可以沒有輸入,但必須有輸出 ## 例子 以下選項判斷是否為演算法 1. 紅綠燈的亮燈規則 (||X||) 2. 阿洛玩原神用的按鍵精靈 (||O||) 3. 咪呀狗使用模版來建立筆記(||O||) 4. 和月的上學路線(||X||) :::spoiler 解析 1. 紅綠燈並不具有有限性,他沒有結束的一天 2. 符合所有條件 3. 由於使用模版是一套固定化流程,並且可以使用腳本自動化完成,因此符合條件 4. 上學路線每天並不固定,換一個環境無法實行了 :::
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up