【Leetcode每日一題】二分查找 - 山脈數組的峰頂索引(難度??)(23)

1. 題目解析

Leetcode鏈接:852. 山脈數組的峰頂索引

這個問題的理解其實相當簡單,只需看一下示例,基本就能明白其含義了。

核心在于找到題目中所說的峰值所在的下標并返回他們的下標即可。

2. 算法原理

峰頂及兩側數據特點分析

峰頂數據特點

  • 峰頂位置?arr[i]?的值大于其前后兩個位置的值,即?arr[i] > arr[i - 1]?且?arr[i] > arr[i + 1]

峰頂左側數據特點

  • 峰頂左側的數據呈現上升趨勢,即?arr[i]?的值大于其左側位置的值?arr[i - 1],但小于其右側位置的值?arr[i + 1]

峰頂右側數據特點

  • 峰頂右側的數據呈現下降趨勢,即?arr[i]?的值小于其左側位置的值?arr[i - 1],但大于其右側位置的值?arr[i + 1]
根據?mid?位置信息的搜索策略

上升趨勢

  • 若?mid?位置的數據呈現上升趨勢,則接下來應在?[mid + 1, right]?區間內繼續搜索峰頂。

下降趨勢

  • 若?mid?位置的數據呈現下降趨勢,則接下來應在?[left, mid - 1]?區間內搜索峰頂。

峰頂位置

  • 若?mid?位置恰好是峰頂,則直接返回該位置作為結果。

3. 代碼編寫?

class Solution {
public:int peakIndexInMountainArray(vector<int>& arr) {int l = 0, r = arr.size() - 1, m = -1;while(l < r){m = (l + r) / 2;if(arr[m] > arr[m + 1]) r = m;else l = m + 1;}return r;}
};

The Last

嗯,就是這樣啦,文章到這里就結束啦,真心感謝你花時間來讀。

覺得有點收獲的話,不妨給我點個吧!

如果發現文章有啥漏洞或錯誤的地方,歡迎私信我或者在評論里提醒一聲~?

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

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

相關文章

運算放大電路常用接法

1、反相比例運算電路 2、同相比例運算電路 3、電壓跟隨器 4、反相求和運算電路 5、同相求和運算電路 6、加減運算電路 7、加減電路 8、積分運算電路 9、實用積分電路 10、微分運算電路 11、實用微分電路 12、壓控電壓源二階低通濾波器 13、壓控電壓源二階高通濾波器 14、RC橋式…

[剪藏] - 尊湃通訊公司竊密曝光,發現繞不過華為

在科技領域風起云涌的今天&#xff0c;一場驚心動魄的竊密事件悄然發生&#xff0c;涉及華為WIFI6芯片技術的商業秘密被竊取&#xff0c;案中主謀竟然是一位曾在華為海思擁有重量級地位的技術大佬。本文將深入挖掘這起事件的來龍去脈&#xff0c;探討竊密者的背叛和華為的技術守…

CDGA數據治理工程師模擬試題(文末附鏈接)

單選題&#xff0c;每題僅有一個正確的選項。(本題型共有100道,總計100分) 1、關于元數據管理原則說法正確的是 A.確保員工了解如何訪問和使用元數據。 B.制定、實施和審核元數據標準&#xff0c;以簡化元數據的集成和使用。 C.創建反饋機制&#xff0c;以便數據…

公鑰密碼體制

公鑰密碼體制 一個系統中,n個用戶之間要進行保密通信,為了確保安全性,兩兩用戶之間的密鑰不能一樣。這種方式下,需要系統提供C2 n=n(n-1)/2把共享密鑰。這樣密鑰的數量就大幅增加了,隨之而來的產生、存儲、分配、管理密鑰的成本也大幅增加。而使用公鑰密碼體制可以大大減…

超1000本計算機經典書籍分享(均可免費下載)

今天給大家推薦兩個開源項目&#xff0c;均可百度網盤下載&#xff1a; 1 https://gitee.com/ForthEspada/CS-Books 超過1000本的計算機經典書籍、個人筆記資料以及作者在各平臺發表文章中所涉及的資源等。 書籍資源包括C/C、Java、Python、Go語言、數據結構與算法、操作系統…

深度學習-回顧經典AlexNet網絡:山高我為峰

深度學習-回顧經典AlexNet網絡之山高我為峰 深度學習中&#xff0c;經典網絡引領一波又一波的技術革命&#xff0c;從LetNet到當前最火的GPT所用的Transformer&#xff0c;它們把AI技術不斷推向高潮。2012年AlexNet大放異彩&#xff0c;它把深度學習技術引領第一個高峰&#x…

總結一下linux性能檢測和調優手段

1.perf 是 Linux 系統中性能分析工具&#xff0c;用于收集性能相關的信息。它可以用于查看 CPU 使用情況、內存性能、磁盤 I/O 等&#xff0c;以幫助開發者找到性能瓶頸。 以下是一些 perf 常見用法和示例&#xff1a; 1. CPU Profiling a. 查看 CPU 使用率 perf stat -e cpu…

10分鐘SkyWalking與SpringBoot融合并整合到Linux中

1.依賴配置 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.2.0.RELEASE</version></dependency><dependency><groupId>org.springframe…

復試PAT乙級day33

PAT乙級1106~1110 1106_2019數列有一個測試點過不了 1109_擅長C 這題不會&#xff0c;通過的是別人的代碼 1110_區塊反轉 這題跟1105_鏈表合并 的處理很像。值得注意的是分段區間翻轉用 大轉小轉 的方式。這題也有一個測試點通不過。

從模型到復合AI系統的轉變

2023年,大型語言模型(LLM)吸引了所有人的注意力,它可以通過提示來執行通用任務,例如翻譯或編碼。這自然導致人們將模型作為AI應用開發的主要成分而密切關注,所有人都在想新的LLM將帶來什么能力。然而,隨著越來越多的開發者開始使用LLM構建,我們認為這種關注正在迅速改變:最先進…

阿里云OSS掛到到ECS作為一個linux目錄(OSSFS掛載)

配置OSS賬號信息并掛載OSS Bucket。以下是該文檔的示例&#xff1a; OSSFS 配置與掛載指南 步驟 1&#xff1a;安裝必要的依賴包 首先&#xff0c;確保您的系統已經安裝了wget和fuse。這些工具是下載OSSFS安裝包和掛載文件系統所必需的。 bash復制代碼 # 檢查并安裝 wget if…

數據服務安全的重要性

數據服務安全在當今信息化社會顯得尤為重要。隨著大數據、云計算、人工智能等技術的飛速發展&#xff0c;數據已經成為企業和組織的核心資產&#xff0c;數據服務安全也面臨著前所未有的挑戰。本文將從數據服務安全的重要性、常見威脅、防護策略以及未來發展趨勢等方面進行探討…

selenuim【1】($x(‘xpath語法’)、WebDriverWait())

文章目錄 初學selenuim記錄1、執行driver webdriver.Chrome()后很久才打開瀏覽器2、瀏覽器多元素定位 $x(‘xpath語法’)3、打開瀏覽器driver.get("網址")執行了很久才開始定位元素&#xff1a;等待&#xff08;1&#xff09;driver.set_page_load_timeout(t)&#…

事務及SpringBoot中的事務開啟

目錄 1.什么是事務&#xff1f; 2.事務的四大特性&#xff1f; 3.SpringBoot中怎樣開啟事務 1.開啟事務支持 2.在需要開啟事務的方法或類上使用Transactional 3.通過配置類來開啟全局事務 1.什么是事務&#xff1f; 事務是指在數據庫管理系統中執行的一系列操作的邏輯單元。事…

基于SpringBoot+vue+elementui在線教育系統詳細設計實現

前言 ??博主介紹:?專注于Java、小程序技術領域和畢業項目實戰??? ???? 精彩專欄 推薦訂閱???? 2024年Java精品實戰案例《100套》 ??文末獲取源碼聯系?? ??文末獲取源碼+數據庫?? 感興趣的可以先收藏起來,還有大家在畢設選題,項目以及論文編寫等相…

外包干了7個月,技術退步明顯.......

先說一下自己的情況&#xff0c;大專生&#xff0c;18年通過校招進入北京某軟件公司&#xff0c;干了接近4年的功能測試&#xff0c;今年年初&#xff0c;感覺自己不能夠在這樣下去了&#xff0c;長時間呆在一個舒適的環境會讓一個人墮落! 而我已經在一個企業干了四年的功能測…

智慧旅游+數字化景區整體解決方案:文件全文83頁,附下載

關鍵詞&#xff1a;智慧景區建設&#xff0c;智慧旅游一體化平臺&#xff0c;數字化景區建設&#xff0c;智慧旅游建設&#xff0c;智慧景區解決方案&#xff0c;智慧文旅解決方案&#xff0c;智慧旅游解決方案 一、景區智慧旅游建設需求與背景分析 1、技術發展背景 隨著信息…

Unity | Shader基礎知識(第十集:shader常用外部資產單詞速成)

目錄 一、外部資產簡介 二、常用的外部資產單詞 三、常用的外部資產單詞和引入內部 四、圖片資產外部調整的具體講解 1.Tiling&#xff0c;中文&#xff1a;鋪地磚 2.Offset&#xff0c;中文&#xff1a;偏移 五、作者的話 一、外部資產簡介 在第六集中&#xff0c;我們…

RabbitMQ的常見工作模式

Work queues 工作隊列模式 模式說明 通過Helloworld工程我們已經能夠構建一個簡單的消息隊列的基本項目&#xff0c;項目中存在幾個角色:生產 者、消費者、隊列&#xff0c;而對于我們真實的開發中 &#xff0c;對于消息的消費者通過是有多個的。 比如在實現用戶注冊功能時&…

【OpenCV】繪制桌面鎖屏時鐘

OpenCV 是一個開源的計算機視覺&#xff08;Computer Vision&#xff09;與機器學習軟件庫&#xff0c;提供了多種圖像處理算法與接口&#xff0c;用于解決計算機視覺相關問題。OpenCV 支持多平臺與多語言&#xff0c;本文主要記錄如何使用 OpenCV-Python 繪制桌面鎖屏時鐘。 目…