搜索演算法

電腦常需要在大量的資料集之中尋找資訊,因此電腦必須為此發展出快速又有效的方法。


以下透過一些活動來推演三種不同的搜尋方式:線性搜尋法、二分搜尋法以及雜湊搜尋法。

【暖身活動 - 傳統海戰棋】
遊戲人數:2人

工具:每人一張紙,上面有兩組6x6的座標方格,第一組稱為佈局盤、第二組稱為炮擊盤,如圖所示
1. 佈局:
遊戲開始前,雙方在版面上放置共計四艘的船艦,分別是佔五格的航空母艦(以字母A表示)、佔四格的戰艦(以字母B表示)、佔三格的巡洋艦(以字母C表示)、以及佔兩格的巡邏艇(以字母D表示)

 佈局結果舉例如下


2. 炮擊開始:
雙方玩家輪流進行,一次喊出一個位址作為炮擊地點。

若對方棋盤上所對應的位置有船艦,則需說出被擊中的船艦代號並在己方的佈局盤上的對應位置打叉,猜測方則根據回應在炮擊盤上的猜測位置記錄擊中的代號

若對方棋盤上所對應的位置沒有船艦,對方則說「MISS!」,猜測方則在炮擊盤上的猜測位置上寫下「╳」,被攻擊方則在此位置上寫下「○」

遊戲進行示例:

【回合一 – 玩家炮擊位置3B,結果為MISS,進行後棋盤記錄如下】
【回合二 – 玩家炮擊位置4C,結果為擊中船艦代號C,進行後棋盤記錄如下】
【回合三 – 玩家炮擊位置1D,結果為擊中船艦代號A,進行後棋盤記錄如下】

2. 遊戲結束條件:
其中一方的炮擊盤上寫滿5A4B3C2D(亦即對方的佈局盤上所有的船艦都已被打叉)。


最後修改: 2017年 04月 6日(Thu) 14:40