【原神 × 插入排序】刷圣遺物也講算法:圣遺物評分系統背后的排序邏輯你真的懂嗎?

?? 改編自:王爭《數據結構與算法之美》
?? 游戲演繹:米哈游《原神》
?? 核心關鍵詞:插入排序、排序算法、評分系統、屬性評價、強化圣遺物、冒泡排序對比


?? 引言:原神刷本=刷排序?

玩《原神》的玩家每天日常是啥?體力用來刷圣遺物、精通頭、暴擊頭、攻充沙……一堆副本爆一堆裝備,怎么判斷哪個最好?我們通常會:

  • 看主屬性和副屬性
  • 結合角色使用場景打分
  • 排個分先用“過渡畢業”的

這個過程,其實背后用的就是排序算法!尤其是插入排序(Insertion Sort),最貼近我們在實際挑選圣遺物的操作方式。

這篇文章,我們就從《原神》的玩法中出發,帶你徹底理解插入排序,并通過與冒泡排序的對比、工程使用場景的穿插、源碼級分析,做到“真會用”。


一、【場景類比】你刷圣遺物的方式,其實就是插入排序

1. 圣遺物掉落:五件套各屬性不同

設想你打了深淵秘境,每輪掉落 3~4 件圣遺物。你做了啥?

  1. 看副詞條:暴擊、雙爆、精通是好條,防御、生命要拉黑;
  2. 給每一件評分;
  3. 排個順序,選前幾件留著,其余喂掉。

這個“評分 + 插入到已有序列表”就是標準的插入排序邏輯。


2. 插入排序在原神中的擬態行為:

我們抽象出一個過程:

圣遺物列表 = []
for 圣遺物 in 每輪掉落:計算評分(圣遺物)找到正確位置插入(圣遺物, 圣遺物列表)

這段偽代碼就是插入排序的核心:

將當前元素插入到前面已經排好序的部分中,確保整體仍然有序。

這比起“每次都重新全排一次”更高效,也更貼近我們現實中的行為模式。


二、插入排序的原理詳解(算法細節+圖示演繹)

1. 插入排序的邏輯框架

插入排序從第二個元素開始,依次向前比較并插入正確位置:

def insertion_sort(arr)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/83143.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/83143.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/83143.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

quasar electron mode如何打包無邊框桌面應用程序

預覽 開源項目Tokei Kun 一款簡潔的周年紀念app,現已發布APK(安卓)和 EXE(Windows) 項目倉庫地址:Github Repo 應用下載鏈接:Github Releases Preparation for Electron quasar dev -m elect…

微信小程序真機調試時如何實現與本地開發環境服務器交互

最近在開發微信小程序項目,真機調試時需要在手機上運行小程序,為了實現本地開發服務器與手機小程序的交互,需要以下步驟 1.將手機連到和本地一樣的局域網 2.Visual Studio中將IIS Express服務器的localhost端口地址修改為本機的IP自定義的端口: 1)找到web api項目…

Scratch節日 | 拯救屈原 | 端午節

端午節快樂! 這款特別為端午節打造的Scratch游戲 《拯救屈原》,將帶你走進古代中國,感受歷史與文化的魅力! 🏮 游戲介紹 扮演勇敢的探險者,穿越時空回到古代,解鎖謎題,完成任務&…

PHP下實現RSA的加密,解密,加簽和驗簽

前言: RSA下加密,解密,加簽和驗簽是四種不同的操作,有時候會搞錯,記錄一下。 1.公鑰加密,私鑰解密 發送方通過公鑰將原數據加密成一個sign參數,相當于就是信息的載體,接收方能通過si…

Win10秘笈:兩種方式修改網卡物理地址(MAC)

Win10秘笈:兩種方式修改網卡物理地址(MAC) 在修改之前,可以先確定一下要修改的網卡MAC地址,查詢方法有很多種,比如: 1、在設置→網絡和Internet→WLAN/以太網,如下圖所示。 2、在控…

C++中IO文件輸入輸出知識詳解和注意事項

以下內容將從文件流類體系、打開模式、文本與二進制 I/O、隨機訪問、錯誤處理、性能優化等方面&#xff0c;詳解 C 中文件輸入輸出的使用要點&#xff0c;并配以示例。 一、文件流類體系 C 標準庫提供三種文件流類型&#xff0c;均定義在 <fstream> 中&#xff1a; std…

Unity3D仿星露谷物語開發56之保存角色位置到文件

1、目標 游戲中通過Save Game保存角色位置&#xff0c;當重啟游戲后&#xff0c;通過Load Game可以恢復角色的位置。 2、Player對象操作 &#xff08;1&#xff09;組件添加 給Hierarchy下的Player組件添加Generate GUID組件。 &#xff08;2&#xff09;修改SceneSave.cs腳…

TKernel模塊--雜項

TKernel模塊–雜項 1.DEFINE_HARRAY1 #define DEFINE_HARRAY1(HClassName, _Array1Type_) \ class HClassName : public _Array1Type_, public Standard_Transient { \public: …

c++ typeid運算符

typeid運算符能獲取類型信息。獲取到的是type_info對象。type_info類型如下&#xff1a; 可以看到&#xff0c;這個類刪除了拷貝構造函數以及等號操作符。有一些成員函數&#xff1a;hash_code、before、name、raw_name, 還重載了和!運算符。 測試&#xff1a; void testTyp…

第304個Vulnhub靶場演練攻略:digital world.local:FALL

digital world.local&#xff1a;FALL Vulnhub 演練 FALL (digitalworld.local: FALL) 是 Donavan 為 Vulnhub 打造的一款中型機器。這款實驗室非常適合經驗豐富的 CTF 玩家&#xff0c;他們希望在這類環境中檢驗自己的技能。那么&#xff0c;讓我們開始吧&#xff0c;看看如何…

【數據庫】數據庫恢復技術

數據庫恢復技術 實現恢復的核心是使用冗余&#xff0c;也就是根據冗余數據重建不正確數據。 事務 事務是一個數據庫操作序列&#xff0c;是一個不可分割的工作單位&#xff0c;是恢復和并發的基本單位。 在關系數據庫中&#xff0c;一個事務是一條或多條SQL語句&#xff0c…

switch-case判斷

switch-case判斷 #include <stdio.h> int main() {int type;printf("請輸入你的選擇&#xff1a;\n");scanf("%d",&type);getchar();switch (type){case 1:printf("你好&#xff01;");break;case 2:printf("早上好&#xff01;…

從監控到告警:Prometheus+Grafana+Alertmanager+告警通知服務全鏈路落地實踐

文章目錄 一、引言1.1 監控告警的必要性1.2 監控告警的基本原理1.2.1 指標采集與存儲1.2.2 告警規則與觸發機制1.2.3 多渠道通知與閉環 二、技術選型與架構設計2.1 為什么選擇 Prometheus 及其生態2.1.1 Prometheus 優勢分析2.1.2 Grafana 可視化能力2.1.3 Alertmanager 靈活告…

STM32 UART通信實戰指南:從原理到項目落地

STM32串口通信實戰指南&#xff1a;從零開始手把手教你 前言&#xff1a;為什么串口這么重要&#xff1f; 在嵌入式開發中&#xff0c;串口就像設備的"嘴巴"和"耳朵"。無論是給單片機下達指令、讀取傳感器數據&#xff0c;還是讓兩個模塊"對話"…

Jmeter requests

1.Jemter元件和組件 1.1 元件和組件的概念 元件&#xff1a;多個功能相似的的組件的容器&#xff0c;類似于一個工具箱。 組件&#xff1a;實現某個特定功能的實例&#xff0c;類似于工具箱中的螺絲刀&#xff0c;十字扳手... 1.2 作用域和執行順序 1.2.1 作用域 例子&#…

計算機視覺---GT(ground truth)

在計算機視覺&#xff08;Computer Vision, CV&#xff09;領域&#xff0c;Ground Truth&#xff08;GT&#xff0c;中文常譯為“真值”或“ ground truth”&#xff09; 是指關于數據的真實標簽或客觀事實&#xff0c;是模型訓練、評估和驗證的基準。它是連接算法與現實世界的…

1-Wire 一線式總線:從原理到實戰,玩轉 DS18B20 溫度采集

引言 在嵌入式系統中&#xff0c;通信總線是連接 CPU 與外設的橋梁。從 I2C、SPI 到 UART&#xff0c;每種總線都有其獨特的應用場景。而本文要介紹的1-Wire 一線式總線&#xff0c;以其極簡的硬件設計和獨特的通信協議&#xff0c;在溫度采集、身份識別等領域大放異彩。本文將…

基于開源AI大模型AI智能名片S2B2C商城小程序源碼的銷售環節數字化實現路徑研究

摘要&#xff1a;在數字化浪潮下&#xff0c;企業銷售環節的轉型升級已成為提升競爭力的核心命題。本文基于清華大學全球產業研究院《中國企業數字化轉型研究報告&#xff08;2020&#xff09;》提出的“提升銷售率與利潤率、打通客戶數據、強化營銷協同、構建全景用戶畫像、助…

Linux淺談

Linux淺談 一、什么是 Linux&#xff1f;先拋開 “內核”&#xff0c;看整體 可以把 Linux 系統 想象成一臺 “組裝電腦”&#xff1a; 最核心的零件是 “主板”—— 這就是 Linux 內核&#xff08;Kernel&#xff09;&#xff0c;負責管理電腦里的所有硬件&#xff08;比如 …

PostgreSQL ERROR: out of shared memory處理

使用pg_dump命令導出一個庫的時候&#xff0c;報 pg_dump: error: query failed: ERROR: out of shared memory HINT: You might need to increase "max_locks_per_transaction". 從錯誤字面上看是超出內存大小了&#xff0c;建議增加max_locks_per_transaction參…