休息日的思考與額外題——雙指針、原地哈希day28

文章目錄

  • 前言
  • 一、11. 盛最多水的容器
  • 二、41. 缺失的第一個正數
  • 三、42. 接雨水
  • 總結


前言

一個本碩雙非的小菜雞,備戰24年秋招,計劃二刷完卡子哥的刷題計劃,加油!
二刷決定精刷了,于是參加了卡子哥的刷題班,訓練營為期60天,我一定能堅持下去,迎來兩個月后的脫變的,加油!
推薦一手卡子哥的刷題網站,感謝卡子哥。代碼隨想錄

一、11. 盛最多水的容器

11. 盛最多水的容器
Note:雙指針

class Solution {
public:int maxArea(vector<int>& height) {int leftIndex = 0, rightIndex = height.size() - 1;int res = 0;while (leftIndex < rightIndex) {int ans = min(height[leftIndex], height[rightIndex]) * (rightIndex - leftIndex);res = max(ans, res);if (height[leftIndex] <= height[rightIndex])leftIndex++;elserightIndex--;}return res;}
};

二、41. 缺失的第一個正數

41. 缺失的第一個正數
Note:神思想,利用-1原地哈希

class Solution {
public:int firstMissingPositive(vector<int>& nums) {int size = nums.size();if (find(nums.begin(), nums.end(), 1) == nums.end())return 1;for (int i = 0; i < size; i++) {if (nums[i] <= 0 || nums[i] > size)nums[i] = 1;}for (int i = 0; i < size; i++) {int num = abs(nums[i]) - 1;nums[num] = -abs(nums[num]);}for (int i = 0; i < size; i++) {if (nums[i] > 0)return i + 1;}return size + 1;}
};

三、42. 接雨水

42. 接雨水
Note:雙指針

class Solution {
public:int trap(vector<int>& height) {int ans = 0;int left = 0, right = height.size() - 1;int leftMax = 0, rightMax = 0;while (left < right) {leftMax = max(leftMax, height[left]);rightMax = max(rightMax, height[right]);if (height[left] < height[right]) {ans += leftMax - height[left];++left;} else {ans += rightMax - height[right];--right;}}return ans;}
};

總結

hot前100的三道題

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

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

相關文章

32單片機基礎:旋轉編碼器計次

接線圖如上圖所示。 我們初始化一下PB0和PB1兩個GPIO口外設中斷&#xff0c;當然&#xff0c;這里只初始化一個外部中斷也能完成功能的對于編碼器而言&#xff0c;下圖所示為正轉的波形。如果把一相的下降沿用作觸發中斷&#xff0c;在中斷時刻讀取另一相的電平&#xff0c;正…

【EXCEL】SUMIFS多次條件篩選數據

問題案例 有如下兩個工作表&#xff08;Sheet1和Sheet2&#xff09;&#xff1a; 在sheet1中的C2行獲得一個結果&#xff08;項目1的1月收入&#xff09;&#xff0c;是對sheet2中的A列篩選出“項目1”B列篩選出“202401”而獲得對應C列的結果。借助excel的公式如何實現。 S…

【算法科目】2024年第二屆全國大學生信息技術認證挑戰賽 題解

圖像壓縮 曾經看到過&#xff0c;這是一道洛谷原題&#xff0c;很可惜我沒做過&#xff0c;有點看不懂就沒嘗試。 原題鏈接&#xff1a;B3851 [GESP202306 四級] 圖像壓縮 - 洛谷 | 計算機科學教育新生態 (luogu.com.cn) 因數分解 直接枚舉就行了&#xff0c;從2開始找因子&a…

Spring:EnclosingClass工具類分辨

Spring&#xff1a;EnclosingClass工具類分辨 1 前言 通過Spring的工具分辨EnclosingClass類。 測試類如下&#xff1a; package com.xiaoxu.test.enclosingClass;/*** author xiaoxu* date 2024-01-18* java_demo2:com.xiaoxu.test.enclosingClass.Outter*/ public class …

微信小程序(四十六)登入界面-進階版

注釋很詳細&#xff0c;直接上代碼 上一篇 此文使用了vant組件庫&#xff0c;沒有安裝配置的可以參考此篇vant組件的安裝與配置 新增內容&#xff1a; 1.手機號與驗證碼格式驗證 2.驗證碼的網絡申請和校驗 wechat-http模塊在好幾篇以前已經講了咋安裝的&#xff0c;不記得的友…

為什么要用Python?

為什么要用Python&#xff1f; Python簡單易用&#xff1a;提供大量的簡單易用數據結構和內置庫&#xff0c;語法結構也很簡單易讀&#xff0c;不需要使用括號來進行代碼塊分組&#xff0c;也不需要預聲明變量或參數。Python開發效率高&#xff1a;簡單易用的前提下&#xff0…

vue3輸入單號和張數,自動生成連號的單號

需求&#xff1a; 輸入連號事件&#xff0c;需要在表格中輸入物流單號&#xff0c;物流號碼&#xff0c;生成的數量&#xff0c;名稱&#xff0c;點擊確定自動生成固定數量的連號物流單號 1.頁面布局 <div><el-button type"primary" size"default&quo…

最新版阿里云Linux CentOS7 ecs-user用戶安裝Mysql8詳細教程(超簡單)

經過兩天的踩坑后&#xff0c;終于成功安裝&#xff0c;并找到了最快捷的安裝方式。接下來就由我來給大家介紹不踩坑安裝大法&#xff01; 一、下載Mysql 首先前往Mysql官網下載 MySQL官方下載地址 第一步&#xff0c;選擇安裝包&#xff0c;這是最關鍵的一步&#xff0c;選錯安…

使用query請求數據出現500的報錯

我在寫項目的時候遇到了一個問題&#xff0c;就是在存商品id的時候我將它使用了JSON.stringify的格式轉換了&#xff01;&#xff01;&#xff01;于是便爆出了500這個錯誤&#xff01;&#xff01;&#xff01; 我將JSON.stringify的格式去除之后&#xff0c;它就正常顯示了&…

昇騰ACL應用開發之硬件編解碼dvpp

1.前言 在我們進行實際的應用開發時&#xff0c;都會隨著對一款產品或者AI芯片的了解加深&#xff0c;大家都會想到有什么可以加速預處理啊或者后處理的手段&#xff1f;常見的不同廠家對于應用開發的時候&#xff0c;都會提供一個硬件解碼和硬件編碼的能力&#xff0c;這也是拋…

Docker 命令詳解:容器、鏡像、網絡和數據卷管理

文章目錄 1. docker run2. docker pull3. docker images4. docker ps5. docker stop6. docker rm7. docker commit8. docker exec9. docker logs10. docker network11. docker volume12. docker save13. docker load14. docker tag15. docker search16. docker diff17. docker …

sql注入之sqli-labs/less-3 單引號加括號閉合

輸入單引號試探&#xff1a; id1 報錯信息里面出現 ) 說明閉合符合里面還有個 ) 再次試探&#xff1a;id1 ) order by 3 -- 查看回顯位置&#xff1a; id-1%20%27)%20union%20select%201,2,3%20-- 查看數據庫&#xff1a; id-1%20%27)%20union%20select%201,2,database()%2…

Kerberos協議攻防之黃金票據控制整個公司電腦

&#x1f449;重點內容&#xff1a; 1、網絡認證、本地認證、域認證的優略勢 2、域認證之Kerberos協議的認證流程詳解 3、TGT、Krbtgt、KDC、TGS搞懂這些繞口的概念 4、深入理解黃金票據攻擊Golden Ticket Attack 5、實戰&#xff01;通過黃金票據控制內網中所有的電腦

DC-2靶機詳解

寫寫自己打DC-2的過程 使用工具 kali DC-2的靶機下載地址為&#xff1a;https://www.vulnhub.com/entry/dc-2,311/ 環境配置。 Kali和DC-2都設置為NAT模式&#xff0c;都為僅主機模式也可以。 信息收集 arp-scan -l nmap -sn 192.168.236.0/24 獲取靶機ip&#xff1a;192.16…

基于springboot+vue的工廠車間管理系統

博主主頁&#xff1a;貓頭鷹源碼 博主簡介&#xff1a;Java領域優質創作者、CSDN博客專家、阿里云專家博主、公司架構師、全網粉絲5萬、專注Java技術領域和畢業設計項目實戰&#xff0c;歡迎高校老師\講師\同行交流合作 ?主要內容&#xff1a;畢業設計(Javaweb項目|小程序|Pyt…

【Linux】輸入系統應用

# 前置知識 (1)輸入子系統分為三層&#xff0c;分別是事件處理層、核心層、設備驅動層&#xff1b; (2)鼠標移動、鍵盤按鍵按下等輸入事件都需要通過設備驅動層→核心層→事件處理層→用戶空間&#xff0c;層層上報&#xff0c;直到應用程序; 事件處理層 (1)事情處理層主要是負…

【八】【SQL】子查詢和where

顯示與SMITH同一部門的員工 mysql> select *from emp where enameSMITH; ----------------------------------------------------------------------- | empno | ename | job | mgr | hiredate | sal | comm | deptno | --------------------------------…

Python調用C,python call c,pybind11

文章目錄 前言1.將pybind11 clone至當前項目下的extern目錄下2.在CmakeLists.txt中將pybind11項目包含3.接口cpp文件格式4.編譯5.導入Python使用6.性能比較pybind11項目地址 前言 通過https://github.com/pybind/pybind11項目實現Python調用C/C代碼 實現步驟 1.將pybind11 cl…

騰訊云4核8G服務器申請費用多少?性能如何?支持幾個人?

騰訊云4核8G服務器支持多少人在線訪問&#xff1f;支持25人同時訪問。實際上程序效率不同支持人數在線人數不同&#xff0c;公網帶寬也是影響4核8G服務器并發數的一大因素&#xff0c;假設公網帶寬太小&#xff0c;流量直接卡在入口&#xff0c;4核8G配置的CPU內存也會造成計算…

大數據報告檢測到風險等級太高是怎么回事呢?

隨著金融風控越來越多元化&#xff0c;大數據作為新興的技術被運用到貸前風控中去了&#xff0c;不少人也了解過自己的大數據&#xff0c;但是由于相關知識不足&#xff0c;看不懂報告&#xff0c;在常見的問題中&#xff0c;大數據檢測到風險等級太高是怎么回事呢?小易大數據…