【數據結構】1-3 算法的時間復雜度

數據結構知識點合集:數據結構與算法

? 知識點

在這里插入圖片描述

? 時間復雜度的定義

1、算法時間復雜度

??事前預估算法時間開銷T(n)與問題規模 n 的關系(T 表示 “time”)

2、語句頻度

??算法中語句的執行次數

在這里插入圖片描述

??對于以上算法,語句頻度:

????① ——1次 ② ——3001次 ③④ ——3000次 ⑤ ——1次

????T(3000) = 1 + 3001 + 2*3000 + 1

??時間開銷與問題規模 n 的關系:

????T(n)=3n+3

??大O記號表示算法的一種漸近時間復雜度;大O表示“同階”,同等數量級。即:當 n->∞時,二者之比為常數

在這里插入圖片描述

??結論1:可以只考慮階數高的部分

??結論2:問題規模足夠大時,常數項系數也可以忽略

? 時間復雜度的計算規則

1、加法規則

T(n) = T1(n) + T2(n) = O(f(n)) + O(g(n)) = O(max(f(n), g(n)))

??多項相加,只保留最高階的項,且系數變為1

2、乘法規則

T(n) = T1(n)×T2(n) = O(f(n))×O(g(n)) = O(f(n)×g(n))

??多項相乘,都保留

3、常見時間復雜度的比較

O(1) < O(log2n) < O(n) < O(nlog2n) < O(n2) < O(n3) < O(2n) < O(n!) < O(nn)

??常<對<冪<指<階

4、順序執行的代碼只會影響常數項,可以忽略

5、只需挑循環中的一個基本操作分析它的執行次數與 n 的關系即可

6、如果有多層嵌套循環,只需關注最深層循環循環了幾次

例:計算以下算法的時間復雜度 T(n):

在這里插入圖片描述

??設最深層循環的語句頻度(總共循環的次數)為 x,則由循環條件可知,循環結束時剛好滿足 2^x > n

??x = log_2(n) + 1

??T(n) = O(x) = O(log_(2)n)

? 三種常用的時間復雜度

最壞時間復雜度:最壞情況下算法的時間復雜度

平均時間復雜度:所有輸入示例等概率出現的情況下,算法的期望運行時間

最好時間復雜度:最好情況下算法的時間復雜度

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

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

相關文章

【Python 算法零基礎 3.遞推】

壓抑與痛苦&#xff0c;那些輾轉反側的夜&#xff0c;終會讓我們更加強大 —— 25.5.16 一、遞推的概念 遞推 —— 遞推最通俗的理解就是數列&#xff0c;遞推和數列的關系就好比 算法 和 數據結構 的關系&#xff0c;數列有點像數據結構中的線性表(可以是順序表&#xff0c;也…

淘寶扭蛋機系統開發前景分析:解鎖電商娛樂化新藍海

在電商行業競爭日益白熱化的當下&#xff0c;如何通過創新玩法提升用戶粘性、激活消費潛力&#xff0c;成為平臺突破增長瓶頸的關鍵。淘寶扭蛋機系統作為“電商娛樂”的跨界融合產物&#xff0c;正憑借其趣味性、隨機性和社交屬性&#xff0c;成為撬動年輕消費市場的潛力工具。…

NHANES指標推薦:UHR

文章題目&#xff1a;Elevated log uric acid-to-high-density lipoprotein cholesterol ratio (UHR) as a predictor of increased female infertility risk: insights from the NHANES 2013-2020 DOI&#xff1a;10.1186/s12944-025-02521-w 中文標題&#xff1a;對數尿酸與高…

【c庫主要功能】

1 stdio.h 功能&#xff1a;處理文件和標準輸入/輸出流的各種函數和類型 包含變量&#xff1a; size_t&#xff1a;無符號整形&#xff0c;sizeof關鍵字的結果FILE&#xff1a;文件流類型&#xff0c;適合存儲文件流信息的對象類型 庫宏&#xff1a; stderr、stdin、stdout&a…

npm 報錯 gyp verb `which` failed Error: not found: python2 解決方案

一、背景 npm 安裝依賴報如下錯&#xff1a; gyp verb check python checking for Python executable "python2" in the PATH gyp verb which failed Error: not found: python2 一眼看過去都覺得是Python環境問題&#xff0c;其實并不是你python環境問題&#xf…

常見的請求頭(Request Header)參數

1. Accept 作用&#xff1a;告知服務器客戶端支持的響應數據格式&#xff08;如 JSON、XML、HTML&#xff09;。示例&#xff1a;Accept: application/json&#xff08;優先接收 JSON 格式數據&#xff09;。 2. Content-Type 作用&#xff1a;說明請求體的數據格式&#xff08…

計算機網絡:移動通信蜂窩網絡指的是什么?

無線基站的蜂窩網絡(Cellular Network)是現代移動通信系統的核心架構,其核心思想是通過蜂窩狀小區劃分和頻率復用,實現廣域覆蓋、高效頻譜利用和動態資源管理。以下從設計原理、網絡架構、關鍵技術及實際挑戰等方面深入解析蜂窩網絡。 一、蜂窩網絡的設計原理 1. 蜂窩結構…

【AI論文】對抗性后期訓練快速文本到音頻生成

摘要&#xff1a;文本到音頻系統雖然性能不斷提高&#xff0c;但在推理時速度很慢&#xff0c;因此對于許多創意應用來說&#xff0c;它們的延遲是不切實際的。 我們提出了對抗相對對比&#xff08;ARC&#xff09;后訓練&#xff0c;這是第一個不基于蒸餾的擴散/流模型的對抗加…

Word文檔圖片和圖表自動添加序號

0 Preface/Foreword Word文檔是辦公常用的文檔&#xff0c;里面經常會插入圖片或者表格&#xff0c;當表格和圖片數量過多時&#xff0c;如果有些圖片需要刪除或者添加&#xff0c;那么大概率需要修改大量圖片的序號或者引用記錄&#xff0c;如果通過手工一個一個修改&#xf…

軟件架構設計--期末復習

質量屬性 參考視頻&#xff1a;【13.5質量屬性-架構評估】 在軟件架構中&#xff0c;質量屬性是衡量系統設計優劣的關鍵指標&#xff0c;通常分為運行時屬性和非運行時屬性。以下是一些常見的質量屬性&#xff1a; 一、軟件架構中的質量屬性 運行時屬性&#xff1a; 性能&am…

多指標組合策略思路

一種基于多種技術指標和日歷因素的綜合交易策略&#xff0c;旨在通過復雜的條件判斷來預測市場的短期走勢&#xff0c;并據此進行買賣操作。 策略概述 該策略的核心思想是通過結合多個技術指標和日歷因素來判斷市場的短期趨勢&#xff0c;并在合適的時機進行買入或賣出操作。 具…

STM32 HAL驅動程序 內部Flash

hal_flash.c #include "hal_flash.h"volatile uint32_t flashWriteOffset SYS_APP_BAK_SAVE_ADDR_BASE; volatile uint32_t flashReadOffset SYS_APP_BAK_SAVE_ADDR_BASE;/* MCU OTA */ /*擦除指定的Flash頁*/ void flash_erase_page(uint8_t flashPage , uint32_…

電子電路:什么是電流離散性特征?

關于電荷的量子化,即電荷的最小單位是電子的電荷量e。在宏觀電路中,由于電子數量極大,電流看起來是連續的。但在微觀層面,比如納米器件或單電子晶體管中,單個電子的移動就會引起可觀測的離散電流。 還要提到散粒噪聲,這是電流離散性的表現之一。當電流非常小時,例如在二…

AI agent與lang chain的學習筆記 (1)

文章目錄 智能體的4大要素一些上手的例子與思考。創建簡單的AI agent.從本地讀取文件&#xff0c;然后讓AI智能體總結。 也可以自己定義一些工具 來完成一些特定的任務。我們可以使用智能體總結一個視頻。用戶可以隨意問關于視頻的問題。 智能體的4大要素 AI 智能體有以下幾個…

react+html2canvas+jspdf將頁面導出pdf

主要使用html2canvasjspdf 1.將前端頁面導出為pdf 2.處理導出后圖表的截斷問題 export default function AIReport() {const handleExport async () > {try {// 需要導出的內容idconst element document.querySelector(#AI-REPORT-CONTAINER);if (!element) {message.err…

FFmpeg:多媒體處理的終極利器

FFmpeg詳細介紹 1. 定義與基本概述 FFmpeg是一套開源的跨平臺多媒體處理工具集,最初由法國程序員Fabrice Bellard于2000年開發,其名稱源自“Fast Forward MPEG”,體現了其高效處理MPEG格式的能力。它不僅是命令行工具,還包含多個庫和開發套件,支持視頻轉碼、剪輯、合并、…

【應用開發十】pwm

1 應用層操作PWM 與LED設備一樣&#xff0c;操作PWD也是通過sysfs方式 1&#xff09; 所在目錄&#xff1a;/sys/class/pwm&#xff0c;該目錄下的文件為pwmchipX&#xff0c;為PWM控器&#xff0c;I.MX6ULL有八個pwm控制器 1.1 pwm 控制器 PWM控制器里內容&#xff08;即pw…

LeetCode算 法 實 戰 - - - 雙 指 針 與 移 除 元 素、快 慢 指 針 與 刪 除 有 序 數 組 中 的 重 復 項

LeetCode算 法 實 戰 - - - 雙 指 針 與 移 除 元 素、快 慢 指 針 與 刪 除 有 序 數 組 中 的 重 復 項 第 一 題 - - - 移 除 元 素方 法 一 - - - 雙 重 循 環方 法 二 - - - 雙 指 針方 法 三 - - - 相 向 雙 指 針&#xff08;面 對 面 移 動&#xff09; 第 二 題 - - -…

設計模式系列(03):設計原則(二):DIP、ISP、LoD

本文為設計模式系列第3篇,聚焦依賴倒置、接口隔離、迪米特法則三大設計原則,系統梳理定義、實際業務場景、優缺點、最佳實踐與常見誤區,適合系統學習與團隊協作。 目錄 1. 引言2. 依賴倒置原則(DIP)3. 接口隔離原則(ISP)4. 迪米特法則(LoD)5. 常見誤區與反例6. 最佳實…

計算機圖形學中MVP變換的理論推導

計算機圖形學中MVP變換的理論推導 課程地址&#xff1a;Computing the Pixel Coordinates of a 3D Point 知識鋪墊&#xff1a;矩陣的真實內涵 矩陣的每一列/行&#xff08;左乘和右乘的區別&#xff09;代表了新坐標系的基向量在原基向量構成的坐標系中的坐標&#xff0c;這…