tft每日頭條

 > 遊戲

 > 英雄聯盟地區布局圖

英雄聯盟地區布局圖

遊戲 更新时间:2024-05-15 10:46:54

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)1

作者 | 韓小樂 責編 | 張文

頭圖 | CSDN 下載自東方 IC

來源 | 樂享Coding(ID:hhl_1393603513)

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)2

英雄聯盟裡的數據結構

程序=數據結構 算法

不知各位有沒有玩過《英雄聯盟》或者《王者榮耀》?

這是“數據結構”的第一篇文章,主要想讓大家對數據結構有個初步的了解。所以本篇文章會結合《王者榮耀》、《英雄聯盟》這類遊戲簡單闡述數據結構。

數據結構

相互之間存在一種或多種特定關系的數據元素的集合。

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)3

如果我們把在遊戲中控制英雄看作一個程序,那麼英雄就可以成為一個數據對象,比如《英雄聯盟》上單英雄武器大師賈克斯;同時,我需要地圖(部分内存空間)來存儲它,并且設計出适合賈克斯發育的上路地形(數據結構)。但是,上單除了賈克斯之外還有其他很多英雄,所以上路地形(數據結構)需要滿足的條件是:既要滿足賈克斯對上路的依賴需求,也要滿足其他上單英雄對上路的依賴需求。除此之外,我們還需要研究敵方英雄的技能能否克制我方、我需要如何出裝、如何釋放技能等等,這些思路策略就等同于算法。

總結如下:

術語例子
數據元素(組成數據,有一定意義的基本單位,可以由很多數據項組成也被稱為記錄)某個具體英雄
數據結構(相互之間存在一種或多種特定關系的數據元素的集合。)地形
算法(解決特定問題求解步驟的描述)策略
數據項(數據元素的屬性)英雄的屬性
數據(描述客觀事物的符号,是計算機可以操作的對象,能夠被識别并輸入給計算機處理)英雄
數據對象(性質相同的數據元素的集合,是數據的子集)上單英雄

關系圖解如下:

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)4

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)5

提問:如何去選擇數據結構去存儲數據?

回答:這裡還是以遊戲為例。英雄聯盟的地圖共有4種地形:上單、中單、下路、打野。這些地形都存儲在一個地圖上,每個地形都有對應位置的英雄,以上單英雄武器大師賈克斯(或王者榮耀花木蘭)為例,在遊戲中他雖然被标為上單英雄,但是你也可以用他們去下路,去中路或者打野。

同樣的道理,存儲數據也不一定隻能用一種數據結構。現實就是這樣的情況比較少,選擇去上路的原因極大的是依靠上路的地形可以為自己建立一個很大的優勢,而去别路或許就天生具有劣勢。那麼我們為什麼不去選擇上路這種地形呢?

存儲一些數據我們可以使用單向鍊表存儲,也可用順序存儲,但是到底該選哪一種呢?這就需要根據具體的功能而定。比如如果想要查詢快的話(如購物的商品網頁),當然是優先選擇順序存儲,因為它速度更快,每一個都有索引,并且能根據索引立刻返回查詢到的數據。

相比遊戲英雄的例子,數據結構可能知識點會更多些,因為計算機中的數據元素種類很多,數量巨大,依賴關系十分複雜。

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)6

數據結構

數據結構分為邏輯結構和物理結構。

2.1 邏輯結構

定義:數據對象中數據元素之間的相互關系。

集合結構數學學過,不能重複,各個平等
線性結構一對一,糖葫蘆
樹形結構一對多,有層次,倒着的樹
圖形結構多對多,網狀結構

邏輯圖象:

集合

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)7

線性結構

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)8

樹形結構

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)9

圖形結構

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)10

如何去理解邏輯結構

相信各位都畫過電路圖,電路圖其實就是電路的邏輯結構,我們畫電路圖就是為了減少無關影響,更加注重邏輯,還有一個例子就是質點。如圖:

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)11

物理結構顯而易見了,就是電路實際的樣子,如圖:

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)12

2.2 物理結構

定義:數據的邏輯結構在計算機中的儲存形式.

順序存儲結構連續(one by one)
鍊式存儲結構不連續,數據中包含指針,指向下一數據地址

抽象數據類型

數據類型:一組性質相同的集合及定義在此集合上的一些操作的總稱。

通俗:有範圍的數據及操作規範。

抽象數據類型:指一個數學模型及定義在該模型上的一組操作。

通俗:可以自定義的數據類型。

描述抽象數據類型

ADT 抽象數據類型名Data 數據元素之間邏輯關系的定義Operation 操作1 操作結果描述 操作2 ...... 操作nendDAT

舉例:一個遊戲人物(如馬裡奧)在初始時候隻有跳、跑的操作,但是有的公司需要這個人物做打槍的動作,有的公司需要這個人物做趴下的動作,因此自定義的抽象數據類型就很重要!

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)13

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)14

點分享

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)15

英雄聯盟地區布局圖(在英雄聯盟地圖中尋找)16

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关遊戲资讯推荐

热门遊戲资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved