Lua中table.sort()使用方式

table.sort(tab,compare)

參數如下:

tab:表名

compare:比較規則函數名

簡略寫法:

a = {1,2,3}
table.sort(a,function(a,b) return a>b end)

compare這個參數是一個函數,它有兩個參數,你可以理解為表中的兩個不同元素,注意不一定是順序的。

a={1,2,3,4,5,2,9}
table.sort(a,function(a,b)print(a,b)return false 
end)輸出:
9	1
4	1
9	4
2	4
4	5
3	4
4	2
3	4
4	2
9	2
3	2
9	3
2	1
5	1
2	5

返回false則表示a要在b之前,需要交換它們的位置

返回true則表示a要在b之后,不需要交換它們的位置

其次一定要保證能返回true或者false,但是不能只返回true。

最后排序出來的結果你隨便找兩個元素,一前一后,前與后是滿足的比對標準的,如下面:

知道上述,隨便寫一個?

tab = {3,7,6,1,3,4}
--降序
table.sort(tab,function(a,b)return a>b
end)
for i,v in pairs(tab) doprint(v)
end輸出:
7
6
4
3
3
1

最后結果都滿足a>b,a表示前一個,b表示后一個

總結:你要什么樣的結果,就寫滿足該結果為true的條件,這樣就隨便寫。

我要降序,前一個大于后一個,那就等價前一個參數大于后一個參數,則最終結果滿足a>b為true

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

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

相關文章

智能進化:讓AI大模型變得更聰明的路徑探索

前言 隨著人工智能(AI)技術的飛速發展,大模型在多個領域展現出了前所未有的能力。然而,它們仍然面臨著理解力、泛化能力和適應性等方面的挑戰。如何讓大模型變得更聰明,是當前AI研究和應用的一個重要課題。本文將探討…

解除網頁禁止選擇

控制臺輸入以下命令 復制:javascript:void(document.body.οncοpy) 可選:javascript:void(document.body.onselectstart) 拖拉:javascript:void(document.body.οnmοuseup)

C++實現基于http協議的epoll非阻塞模型的web服務器框架(支持訪問服務器目錄下文件的解析)

使用方法: 編譯 例子:./httpserver 9999 ../ htmltest/ 可執行文件 端口 要訪問的目錄下的 例子:http://192.168.88.130:9999/luffy.html 前提概要 http協議 :應用層協議,用于網絡通信,封裝要傳輸的數據&…

npm install [Error]

npm install 依賴的時候報錯 依賴版本問題的沖突,忽視即可 使用 npm install --legacy-peer-deps

剪畫小程序:3個分離人聲提取小技巧,趕緊收藏起來吧!

Hello!大家好呀!這里是社會主義搬磚人小畫! 人聲分離,是指將混合在一起的人聲和其他聲音(如背景音樂、環境噪音等)分離開來,提取出單獨的人聲部分的過程。 在實際應用中,人聲分離技…

leetcode654.最大二叉樹、617.合并二叉樹、700.二叉搜索樹中的搜索

654.最大二叉樹 構造樹一般采用的是前序遍歷,因為先構造中間節點,然后遞歸構造左子樹和右子樹 確定遞歸函數的參數和返回值 參數傳入的是存放元素的數組,返回該數組構造的二叉樹的頭結點,返回類型是指向節點的指針。 TreeNode…

Unity 開發Hololens,制作面板跟隨眼鏡一起移動,(面板跟蹤)

Hololens滑動框以及面板跟蹤 創建空物體,并添加組件 SolverHandler、RedialView、FollowMeToggle 創建按鈕,控制停止/開始跟蹤 創建一個Hololens自帶的按鈕放到右上角,并添加事件 創建藍色背景板 創建空物體Backplate,下面再…

個體因果效應估計|EDVAE:用于個體治療效果估計的反事實推理中的解開潛在因素模型

【摘要】根據觀察數據估計個體治療效果(ITE)是一項至關重要但具有挑戰性的任務。解纏結表示已用于將代理變量分為混雜變量、工具變量和調整變量。然而,根據觀測數據準確地進行反事實推理來識別 ITE 仍然是一個懸而未決的問題。在本文中&#…

AppInventor2要在界面上做一個電量圖標,有什么好的思路嗎?

問:要在界面上做一個電量圖標,有什么好的思路嗎? 答:首先,很容易想到使用進度條相關的組件,原生”滑動條“組件可以嗎? 答案顯而易見,首先它的樣式自定義不夠,UI不外乎上…

STM32_ADC

1、ADC簡介 ADC,即Analog-Digital Converter,模擬-數字轉換器。 ADC可以將引腳上連續變化的模擬電壓轉換為內存中存儲的數字變量,建立模擬電路到數字電路的橋梁。 12位逐次逼近型ADC,1us轉換時間。 輸入電壓范圍:0~3.3…

P6【力扣144,94,145】【數據結構】【二叉樹遍歷】C++版

【144】二叉樹的前序遍歷 1、遞歸法&#xff1a; class Solution { public:void preorder(TreeNode* root, vector<int> &res){if(root nullptr){return;}res.push_back(root->val);preorder(root->left, res);preorder(root->right, res);}vector<in…

沒有密碼如何卸載卡巴斯基?

如果忘記卡巴斯基6.0的保護密碼&#xff0c; &#xff08;1&#xff09;進入安全模式下 &#xff08;2&#xff09;打開6.0的安裝目錄 Kaspersky Anti-Virus 6.0: C://Program Files//Kaspersky Lab//Kaspersky Anti-Virus 6.0 &#xff08;3&#xff09;將目錄中的avp.exe改…

CVE-2020-7982 OpenWrt 遠程命令執行漏洞學習(更新中)

OpenWrt是一款應用于嵌入式設備如路由器等的Linux操作系統。類似于kali等linux系統中的apt-get等&#xff0c;該系統中下載應用使用的是opgk工具&#xff0c;其通過非加密的HTTP連接來下載應用。但是其下載的應用使用了SHA256sum哈希值來進行檢驗&#xff0c;所以將下載到的數據…

開發過程中使用MySQL和Oracle的差異

前言 小型項目中使用MySQL的占比還是相對較高的&#xff0c;但是也不排除隨著項目的擴大&#xff0c;產品的豐富&#xff0c;或者甲方的財大氣粗&#xff0c;有可能會有MySQL換成Oracle。那么這兩者對于開發者而言&#xff0c;有什么差異化的地方呢。 官方文檔 MySQL5.7 htt…

weblogic簡介

WebLogic是美國Oracle公司出品的一個Application Server&#xff0c;它是一個基于JAVA EE架構的中間件。WebLogic主要用于開發、集成、部署和管理大型分布式Web應用、網絡應用和數據庫應用的Java應用服務器。它將Java的動態功能和Java Enterprise標準的安全性引入大型網絡應用的…

什么是安全左移如何實現安全左移

文章目錄 一、傳統軟件開發面臨的安全挑戰二、什么是安全左移四、安全左移與安全開發生命周期&#xff08;SDL&#xff09;三、安全左移對開發的挑戰五、從DevOps到DevSecOps六、SDL與DevSecOps 一、傳統軟件開發面臨的安全挑戰 傳統軟件開發面臨的安全挑戰主要包括以下幾個方…

yarn常用命令

Yarn 是一個快速、可靠且安全的依賴管理工具&#xff0c;用于替代 npm。以下是一些常用的 Yarn 命令&#xff0c;用于不同的包管理和項目依賴安裝場景&#xff1a; 初始化一個新的項目 yarn init這個命令會引導你創建一個 package.json 文件。 安裝依賴 yarn add [package]…

抄表:現代生活中的數據采集關鍵

1.界定與發源 抄表&#xff0c;簡單的說&#xff0c;指從各種各樣計量機器設備(如智能水表、電度表、天然氣表等)載入做好記錄使用量的全過程。這一概念自工業化時代至今就出現了&#xff0c;最初由人工進行&#xff0c;伴隨著科技創新&#xff0c;如今已經演化出自動化和遠程…

Java中的時間戳【詳解】

一.何為Java時間戳 在Java中&#xff0c;時間戳通常指的是自1970年1月1日午夜&#xff08;UTC&#xff09;以來的毫秒數。 這個概念在Java中主要通過java.util.Date類和java.sql.Timestamp類來表示 而在Java 8及以后的版本中&#xff0c;引入了新的日期時間API&#xff0c;即…

給大家分享一套非常棒的python機器學習課程

給大家分享一套非常棒的python機器學習課程——《AI小天才&#xff1a;讓小學生輕松掌握機器學習》&#xff0c;2024年5月完結新課&#xff0c;提供配套的代碼筆記軟件包下載&#xff01;學完本課程&#xff0c;可以輕松掌握機器學習的全面應用&#xff0c;復雜特征工程&#x…