藍橋杯學習大綱

(致酷德與熱愛算法、編程的小伙伴們)

在查閱了相當多的資料后,發現沒有那篇博客、文章很符合我們備戰藍橋杯的學習路徑。所以,干脆自己整理一篇,歡迎大家補充!

一、藍橋必備高頻考點

我們以此為重點學習方向:

1. 基礎算法
枚舉模擬貪心遞歸分治
構造前綴和差分
2.?搜索與排序
線性搜索二分法BFSDFS回溯剪枝
深搜優化記憶化搜索位運算冒泡排序歸并排序
快速排序桶排序
3. 動態規劃
編輯距離最長不重復子串整數背包矩陣連乘最長公共子序列
最長公共子串最長上升子序列最長回文子序列最長回文子串回文分割
最大子段合最大正方形子矩陣滾動數組
數位dp概率dp樹形dp區間dp狀壓dp
4. 數學

GCD&LCM

素數判斷素數生成分解質因數費馬小定理
擴展歐幾里得逆元高斯消元整數拆分模運算
5. 組合數學
容斥原理鴿巢定理乘法原理調和級數斐波那契數
6. 圖論
鄰接矩陣關聯矩陣鄰接表鏈式前向星有向無環圖
判圈拓撲排序最短路徑PrimKruskal
Dijkstra(堆優化)BellmanFloydSPFA
7. 數據結構
數組鏈表隊列先隊列
塊狀鏈表LCA并查集線段樹樹狀數組
二叉樹
8. 幾何
點和向量點積、叉積點和線的關系多邊形面積、周長、體積

判點在多邊形

多面體內外

坐標旋轉

二、藍橋杯知識點總覽

以下為藍橋杯所有考點,可根據興趣,借鑒補充題目。

1. 基礎算法
  • 枚舉:通過遍歷所有可能的情況來解決問題。

  • 模擬:按照題目要求模擬實際操作過程。

  • 貪心:在每一步選擇中都采取最優(即最有利)的選擇,從而希望導致結果是全局最優解。

  • 遞歸:通過函數自己調用自己來解決問題。

  • 分治:將原問題分解為若干個規模更小但結構相同的子問題,遞歸解決這些子問題,然后將子問題的解合并得到原問題的解。

2. 搜索與排序
  • 子集生成:生成一個集合的所有子集。

  • 線性搜索:在數組或列表中從頭到尾依次查找元素。

  • 二分法:在有序數組中通過折半查找的方式快速定位元素。

  • 三分法:將數組分成三部分進行查找或排序。

  • BFS(廣度優先搜索):從根節點開始,逐層遍歷所有節點。

  • DFS(深度優先搜索):從根節點開始,盡可能深地搜索樹的分支。

  • 回溯剪枝:在深度優先搜索中,通過剪枝減少搜索空間,提高搜索效率。

  • 記憶化搜索:通過緩存中間結果,避免重復計算,提高搜索效率。

  • IDA*算法:一種迭代加深的 A* 算法,結合了深度優先搜索和 A* 算法的優點。

  • 位運算:利用位操作進行高效計算。

  • 按位壓縮存儲狀態:通過位運算壓縮存儲狀態,減少內存占用。

  • 選擇排序:每次從未排序部分選擇最小(或最大)元素放到已排序部分。

  • 冒泡排序:通過相鄰元素之間的比較和交換來排序。

  • 歸并排序:通過遞歸地將數組分成兩半,排序后再合并。

  • 快速排序:通過選擇一個基準元素,將數組分成兩部分,一部分小于基準,另一部分大于基準,然后遞歸排序。

  • 堆排序:利用堆這種數據結構進行排序。

  • 計數排序:通過統計每個元素出現的次數來進行排序。

  • 桶排序:將元素分布到若干個桶中,每個桶再分別排序。

3. 動態規劃
  • 編輯距離:計算兩個字符串之間,將一個字符串轉換成另一個字符串所需的最少編輯操作次數。

  • 最長不重復子串:在字符串中找到最長的不重復字符子串。

  • 整數背包:解決背包問題的一種方法,背包容量和物品重量都是整數。

  • 矩陣連乘:計算矩陣連乘的最小代價。

  • 最長公共子序列:在兩個序列中找到最長的公共子序列。

  • 最長公共遞增子序列:在兩個序列中找到最長的公共遞增子序列。

  • 最長上升子序列:在序列中找到最長的上升子序列。

  • 最長回文子序列:在字符串中找到最長的回文子序列。

  • 最長回文子串:在字符串中找到最長的回文子串。

  • 回文分割:將字符串分割成多個回文子串。

  • 最大子段和:在數組中找到連續子數組的最大和。

  • 最大正方形子矩陣:在矩陣中找到最大的正方形子矩陣。

  • 最長鏈對:在一組區間中找到最長的不重疊區間鏈。

  • 最大遞增子序列和:在序列中找到遞增子序列的最大和。

  • 滾動數組:通過使用較小的數組來減少空間復雜度。

  • 數位dp:通過動態規劃解決與數字位數相關的問題。

  • 概率dp:通過動態規劃解決概率相關的問題。

  • 樹形dp:在樹結構上進行動態規劃。

  • 區間dp:在區間上進行動態規劃。

  • 狀壓dp:通過狀態壓縮進行動態規劃。

  • 插頭dp:通過插頭狀態進行動態規劃。

  • 斜率優化:通過斜率優化動態規劃的轉移方程。

  • 平行四邊形優化:通過平行四邊形性質優化動態規劃的轉移方程。

  • 單調隊列優化:通過單調隊列優化動態規劃的轉移方程。

  • 數據結構優化:通過數據結構優化動態規劃的實現。

4. 數學
  • GCD&LCM:最大公約數和最小公倍數。

  • 素數判斷:判斷一個數是否為素數。

  • 素數生成:生成一定范圍內的所有素數。

  • 分解質因數:將一個數分解為質因數的乘積。

  • 歐拉定理:計算歐拉函數的值。

  • 費馬定理:費馬小定理及其擴展。

  • 擴展歐幾里得:求解線性同余方程。

  • 逆元:計算模逆元。

  • 隨機素數測試和大數分解:通過隨機測試判斷素數,以及大數分解。

  • 高斯消元:通過高斯消元法解線性方程組。

  • 偶合方程:解偶合方程組。

  • 整數拆分:將一個整數拆分為多個整數的和。

  • 大步小步算法:解決某些特定的數學問題。

  • 中國剩余定理:解同余方程組。

  • 原根:計算原根。

  • 快速數論變換:通過快速數論變換進行高效計算。

  • 線性丟番圖方程:解線性丟番圖方程。

  • 模運算:進行模運算。

  • 盧卡斯定理:計算組合數的模。

  • 杜教篩:通過杜教篩法計算某些特定的數學問題。

  • 威爾遜定理:通過威爾遜定理判斷素數。

  • 米勒羅賓隨機素數測試:通過米勒羅賓測試判斷素數。

  • 完全數:判斷一個數是否為完全數。

  • 連分數:處理連分數。

5. 組合數學
  • 容斥原理:通過容斥原理計算集合的大小。

  • 鴿巢定理:通過鴿巢定理解決某些組合問題。

  • 乘法原理:通過乘法原理計算排列和組合的數量。

  • 斯特林數:計算斯特林數。

  • 卡特蘭數:計算卡特蘭數。

  • 斐波那契數:計算斐波那契數。

  • 幻方:生成幻方。

  • 莫比烏斯反演:通過莫比烏斯反演解決某些組合問題。

  • 母函數:通過母函數解決某些組合問題。

  • 調和級數:計算調和級數。

6. 圖論
  • 鄰接矩陣:通過鄰接矩陣表示圖。

  • 關聯矩陣:通過關聯矩陣表示圖。

  • 鄰接表:通過鄰接表表示圖。

  • 鏈式前向星:通過鏈式前向星表示圖。

  • 有向無環圖:處理有向無環圖。

  • 歐拉圖:判斷圖是否為歐拉圖。

  • 判圈:判斷圖中是否存在環。

  • 割點:找到圖中的割點。

  • 割邊:找到圖中的割邊。

  • :找到圖中的橋。

  • 雙連通分量:找到圖中的雙連通分量。

  • 強連通分量:找到圖中的強連通分量。

  • 有向圖的強連通分量:找到有向圖中的強連通分量。

  • 拓撲排序:對有向無環圖進行拓撲排序。

  • 二分圖判定:判斷圖是否為二分圖。

  • 最短路徑:計算圖中的最短路徑。

  • 連通分量:找到圖中的連通分量。

  • 次小生成樹:找到圖中的次小生成樹。

  • 曼哈頓最小生成樹:找到曼哈頓距離下的最小生成樹。

  • Dijkstra(堆優化):通過堆優化的 Dijkstra 算法計算最短路徑。

  • Bellman:通過 Bellman-Ford 算法計算最短路徑。

  • Floyd:通過 Floyd-Warshall 算法計算最短路徑。

  • 差分約束:通過差分約束解決某些問題。

  • SPFA:通過 SPFA 算法計算最短路徑。

  • 最小費用最大流:計算圖中的最小費用最大流。

  • 二分圖匹配:在二分圖中找到最大匹配。

  • 歐拉路:找到圖中的歐拉路。

7. 數據結構
  • 數組:基本的數據結構,用于存儲和訪問數據。

  • 鏈表:通過節點鏈接存儲數據。

  • :后進先出的數據結構。

  • 隊列:先進先出的數據結構。

  • 先隊列:優先隊列,用于存儲和訪問數據。

  • 雙端隊列:可以在兩端進行插入和刪除操作的數據結構。

  • 塊狀鏈表:通過塊狀結構優化鏈表的訪問。

  • :通過堆結構存儲和訪問數據。

  • 哈希:通過哈希表存儲和訪問數據。

  • LCA:通過 LCA 算法解決某些樹結構問題。

  • 跳躍表:通過跳躍表優化鏈表的訪問。

  • 并查集:通過并查集解決某些集合問題。

  • 字典樹:通過字典樹存儲和訪問字符串數據。

  • 線段樹:通過線段樹解決區間查詢和更新問題。

  • 樹狀數組:通過樹狀數組解決某些數組問題。

  • 莫隊算法:通過莫隊算法解決某些數組問題。

  • 平衡二叉樹:通過平衡二叉樹存儲和訪問數據。

  • 二叉搜索樹:通過二叉搜索樹存儲和訪問數據。

  • Treap樹:通過 Treap 樹存儲和訪問數據。

  • 二叉樹:基本的樹結構。

  • 笛卡爾樹:通過笛卡爾樹解決某些數組問題。

  • 劃分樹:通過劃分樹解決某些數組問題。

  • 表達式樹:通過表達式樹解決某些表達式問題。

  • 替罪羊樹:通過替罪羊樹解決某些樹結構問題。

  • 伸展樹:通過伸展樹解決某些樹結構問題。

  • 動態樹:通過動態樹解決某些樹結構問題。

  • 左偏堆:通過左偏堆解決某些堆問題。

  • 可并堆:通過可并堆解決某些堆問題。

  • 主席樹:通過主席樹解決某些樹結構問題。

  • 樹鏈剖分:通過樹鏈剖分解決某些樹結構問題。

  • KD樹:通過 KD 樹解決某些空間問題。

  • 樹套樹:通過樹套樹解決某些樹結構問題。

  • FHQ_Treap:通過 FHQ_Treap 解決某些樹結構問題。

8. 幾何
  • 點和向量:處理點和向量的基本操作。

  • 點積、叉積:計算點積和叉積。

  • 點和線的關系:判斷點和線的位置關系。

  • 多邊形:處理多邊形的基本操作。

  • 三角形內心、外心、重心、垂心:計算三角形的內心、外心、重心和垂心。

  • 費馬點:計算費馬點。

  • 面積、周長、體積:計算幾何圖形的面積、周長和體積。

  • 判點在多邊形內外:判斷點是否在多邊形內部或外部。

  • 三角剖分:對多邊形進行三角剖分。

  • 梯形剖分:對多邊形進行梯形剖分。

  • 多邊形重心:計算多邊形的重心。

  • 多邊形切割:對多邊形進行切割操作。

  • 多面體體積:計算多面體的體積。

  • 坐標旋轉:對坐標進行旋轉操作。

  • 凸包:計算點集的凸包。

  • 最近點對:找到點集中的最近點對。

  • 旋轉卡殼:通過旋轉卡殼算法解決某些幾何問題。

  • 半平面交:計算半平面的交集。

  • 最小圓覆蓋:找到覆蓋點集的最小圓。

  • 三維點和向量:處理三維點和向量的基本操作。

  • 三維點積&叉積:計算三維點積和叉積。

  • 最小球覆蓋:找到覆蓋點集的最小球。

  • 三維凸包:計算三維點集的凸包。



指導思想:“農村包圍城市,武裝奪取政權”,教員的這句話太有指導含義了,大概意思就是星星之火可以燎原。從簡單題開始做,不要好高騖遠!當量變引起質變那一刻,藍橋杯必能拿下!

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

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

相關文章

Go 錯誤處理與調試:面向對象的入門教程

Go 錯誤處理與調試:面向對象的入門教程 Go 語言因其簡潔、高效和易于并發編程的特性,逐漸成為后端開發的主流語言之一。錯誤處理是任何編程語言中非常重要的一部分,尤其是在 Go 語言中,Go 提供了一種不同于傳統異常處理機制的錯誤…

Linux探秘坊-------4.進度條小程序

1.緩沖區 #include <stdio.h> int main() {printf("hello bite!");sleep(2);return 0; }執行此代碼后&#xff0c;會 先停頓兩秒&#xff0c;再打印出hello bite&#xff0c;但是明明打印在sleep前面&#xff0c;為什么會后打印呢&#xff1f; 因為&#xff…

基于Python的Diango旅游數據分析推薦系統設計與實現+畢業論文(15000字)

基于Python的Diango旅游數據分析推薦系系統設計與實現畢業論文指導搭建視頻&#xff0c;帶爬蟲 配套論文1w5字 可定制到某個省份&#xff0c;加40 基于用戶的協同過濾算法 有后臺管理 2w多數據集 可配套指導搭建視頻&#xff0c;加20 旅游數據分析推薦系統采用了Python語…

Scrapy:DownloaderAwarePriorityQueue隊列設計詳解

DownloaderAwarePriorityQueue 學習筆記 1. 簡介 DownloaderAwarePriorityQueue 是 Scrapy 中一個高級的優先級隊列實現&#xff0c;它不僅考慮請求的優先級&#xff0c;還會考慮下載器的負載情況。這個隊列為每個域名&#xff08;slot&#xff09;維護獨立的優先級隊列&#…

dify-AI 私有部署可修改前端頁面

dify文檔 官方文檔&#xff1a;歡迎使用 Dify | Dify 源碼&#xff1a;https://github.com/langgenius/dify.git 安裝docker 官網&#xff1a;https://www.docker.com/ 部署服務到docker cd dify cd docker cp .env.example .env docker compose up -d查看效果 http://localh…

PHP基礎部分

但凡是和輸入、寫入相關的一定要預防別人植入惡意代碼! HTML部分 語句格式 <br> <hr> 分割符 <p>插入一行 按住shift 輸入! 然后按回車可快速輸入html代碼(VsCode需要先安裝live server插件) html:<h1>標題 數字越大越往后</h1> <p…

【Elasticsearch】Retrieve inner hits獲取嵌套查詢的具體的嵌套文檔來源,以及父子文檔的來源

Retrieve inner hits 是 Elasticsearch 中的一個功能&#xff0c;用于在嵌套查詢或父子查詢中&#xff0c;返回導致主文檔匹配的具體嵌套對象或子/父文檔的詳細信息&#xff0c;幫助用戶更直觀地理解查詢結果的來源。 在 Elasticsearch 中&#xff0c;Retrieve inner hits是一…

SpringCloud面試題----eureka和zookeeper都可以提供服務注冊與發現的功能,請說說兩個的區別

dEureka 和 Zookeeper 都可以提供服務注冊與發現的功能,它們的區別主要體現在以下幾個方面: 設計理念 Eureka:是基于 RESTful 風格設計的,強調簡單、輕量級,旨在為微服務架構提供一種易于使用的服務發現解決方案,注重服務的可用性和靈活性。Zookeeper:最初是為分布式協…

數據庫提權總結

Mysql提權 UDF提權是利用MYSQL的自定義函數功能&#xff0c;將MYSQL賬號轉化為系統system權限 前提&#xff1a; 1.UDF提權條件 &#xff08;1&#xff09;Mysql版本大于5.1版本udf.dll文件必須放置于MYSQL安裝目錄下的lib\plugin文件夾下。 &#xff08;2&#xff09;Mysql…

“深入淺出”系列之QT:(10)Qt接入Deepseek

項目配置&#xff1a; 在.pro文件中添加網絡模塊&#xff1a; QT core network API配置&#xff1a; 將apiUrl替換為實際的DeepSeek API端點 將apiKey替換為你的有效API密鑰 根據API文檔調整請求參數&#xff08;模型名稱、溫度值等&#xff09; 功能說明&#xff1a; 使…

【Linux探索學習】第二十七彈——信號(上):Linux 信號基礎詳解

Linux學習筆記&#xff1a; https://blog.csdn.net/2301_80220607/category_12805278.html?spm1001.2014.3001.5482 前言&#xff1a; 前面我們已經將進程通信部分講完了&#xff0c;現在我們來講一個進程部分也非常重要的知識點——信號&#xff0c;信號也是進程間通信的一…

nginx負載均衡, 解決iphash不均衡的問題之consistent

原因分析 客戶端IP分布不均&#xff1a;部分IP段請求集中&#xff0c;導致哈希到同一后端。 服務器數量變動&#xff1a;增刪節點時&#xff0c;傳統ip_hash未使用一致性哈希&#xff0c;導致分布重置。 哈希鍵范圍過小&#xff1a;例如僅使用IPv4前24位&#xff0c;不同IP可…

[C++]多態詳解

目錄 一、多態的概念 二、靜態的多態 三、動態的多態 3.1多態的定義 3.2虛函數 四、虛函數的重寫&#xff08;覆蓋&#xff09; 4.1虛函數 4.2三同 4.3兩種特殊情況 &#xff08;1&#xff09;協變 &#xff08;2&#xff09;析構函數的重寫 五、C11中的final和over…

WEB安全--SQL注入--PDO與繞過

一、PDO介紹&#xff1a; 1.1、原理&#xff1a; PDO支持使用預處理語句&#xff08;Prepared Statements&#xff09;&#xff0c;這可以有效防止SQL注入攻擊。預處理語句將SQL語句與數據分開處理&#xff0c;使得用戶輸入的數據始終作為參數傳遞給數據庫&#xff0c;而不會直…

ES12 weakRefs的用法和使用場景

ES12 (ECMAScript 2021) 特性總結&#xff1a;WeakRef 1. WeakRef 概述 描述 WeakRef 是 ES12 引入的一個新特性&#xff0c;用于創建對對象的弱引用。弱引用不會阻止垃圾回收器回收對象&#xff0c;即使該對象仍然被弱引用持有。WeakRef 通常與 FinalizationRegistry 結合使…

50頁精品PPT | 某大數據資產平臺建設項目啟動會材料

該PPT主要介紹了某集團大數據資產平臺建設項目的啟動會材料&#xff0c;圍繞數據作為數字經濟時代核心生產要素的背景&#xff0c;結合國家戰略和集團數字化轉型需求&#xff0c;分析了當前數據資源整合不足、孤島現象嚴重、質量管控薄弱及共享機制不完善等問題&#xff0c;提出…

8.【線性代數】——求解Ax=b

八 求解Axb 1. 解Axb求特解 x p x_p xp?求特解 x n x_n xn?所有解 2. Axb什么時候有解3. A m ? n A_{m * n} Am?n?不同秩的Axb解分析3.1 列滿秩 rn<m3.2 行滿秩 rm<n3.3 rmn3.4 r<m 且 r < n3.5 綜述 1. 解Axb 求解 { x 1 2 x 2 2 x 3 2 x 4 b 1 2 x 1…

動靜態鏈接與加載

目錄 靜態鏈接 ELF加載與進程地址空間&#xff08;靜態鏈接&#xff09; 動態鏈接與動態庫加載 GOT表 靜態鏈接 對于多個.o文件在沒有鏈接之前互相是不知到對方存在的&#xff0c;也就是說這個.o文件中調用函數的的跳轉地址都會被設定為0&#xff08;當然這個函數是在其他.…

Web 后端 請求與響應

一 請求響應 1. 請求&#xff08;Request&#xff09; 客戶端向服務器發送的HTTP請求&#xff0c;通常包含以下內容&#xff1a; 請求行&#xff1a;HTTP方法&#xff08;GET/POST等&#xff09;、請求的URL、協議版本。 請求頭&#xff08;Headers&#xff09;&#xff1a;…

【Excel筆記_6】條件格式和自定義格式設置表中數值超過100保留1位,超過1000保留0位,低于100為默認

方法一&#xff1a;自定義格式 選中需要設置格式的單元格區域。右鍵選擇設置單元格格式&#xff0c;或者在工具欄中選擇開始 -> 數字 -> 自定義格式。在類型框中輸入以下自定義格式&#xff1a; [>1000]0;[>100]0.0;G/通用格式解釋&#xff1a; [>1000]0&…