LeetCode熱題100 兩數之和

目錄

  • 兩數之和
    • 題目解析
      • 方法一暴力求解
        • 代碼
      • 方法二哈希
        • 代碼

感謝各位大佬對我的支持,如果我的文章對你有用,歡迎點擊以下鏈接
🐒🐒🐒 個人主頁
🥸🥸🥸 C語言
🐿?🐿?🐿? C語言例題
🐣🐣🐣 python
🐓🐓🐓 數據結構C語言
🐔🐔🐔 C++
🐿?🐿?🐿? 文章鏈接目錄
🏀🏀🏀 筆試練習題
🐯🐯🐯 Git
🚀🚀🚀 leetCode熱題100

兩數之和

兩數之和鏈接
在這里插入圖片描述

題目解析

這道題其實就是讓我們在給定的數組中找出兩個數,讓他們相加的和等于給定的值,但是要注意兩個數字是不可以相等的,所以如果遇到相等的數字就應該舍去

這道題給出兩種解法
第一種是暴力求解,第二種是哈希

方法一暴力求解

暴力解法其實就是給兩層循環
在這里插入圖片描述

先用一個count去記錄要相加等于的數字
第一次for循環先讓count減去 i 位置的數字
在這里插入圖片描述
第二層for循環就去找count減去后的值,如果第二層for循環沒有找到對應的值,那么就重新讓count等于給定的值,然后 i 往后移

在這里插入圖片描述
之后重復之前的操作
當遇到 i + j 的值為count時要判斷他們 i 和 j 是否指向的是同一個位置,如果位置不同但是值相等的我們也要舍去
在這里插入圖片描述

如果位置不同,且值也不同那么就可以將 i 和 j 的值push_back進一個數組中

代碼
class Solution {
public:vector<int> twoSum(vector<int>& nums, int target) {vector<int> arr;int count = target;for (vector<int>::iterator it1 = nums.begin(); it1 != nums.end(); it1++){count = count - (*it1);for (vector<int>::iterator it2 = nums.begin(); it2 != nums.end();it2++){if (*it2 == count&&it1!=it2) {arr.push_back(it1 - nums.begin());arr.push_back(it2 - nums.begin());break;}}count = target;if(arr.size()>0)break;}return arr;}
};

方法二哈希

下面的代碼我也有點看不懂
我來說說我的想法
就是遍歷一遍數組,然后將出現的數字存儲在一個哈希表中,哈希表是記錄數字出現的次數
在這里插入圖片描述
比如target為10,那么我們在給定的數組中的第一個元素是1,后面我們就在哈希表中查找9這個元素是否存在
可以從上圖中看到,哈希表中9存儲的是1,說明有一個元素的值是9,因此就查找成功了

代碼
class Solution {
public:vector<int> twoSum(vector<int>& nums, int target) {unordered_map<int, int> hashtable;for (int i = 0; i < nums.size(); ++i) {auto it = hashtable.find(target - nums[i]);if (it != hashtable.end()) {return {it->second, i};}hashtable[nums[i]] = i;}return {};}
};

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

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

相關文章

在線服務器具體是指什么?

在線服務器主要是指一種能夠隨時進行網絡連接、管理和操作的服務器&#xff0c;在線服務器是通過互聯網或者是本地網絡&#xff0c;來為企業和用戶提供數據存儲和網絡服務的&#xff0c;在線服務器也可以是物理服務器或者是虛擬服務器&#xff0c;能夠根據遠程訪問工具進行管理…

OSPF綜合性實驗

實驗拓撲&#xff1a; 第一步&#xff1a;進行子網劃分 172.16.0.0/17 172.16.0000 00 00.00000000 -- area1 172.16.0.1/22 -- AR1--G0/0/0 172.16.0.2/22 -- AR2--G0/0/0 172.16.0.3/22 -- AR3--G0/0/0 172.16.4.1/22 -- AR1-- Lo0 172.16.8.2/22 -- AR2-- Lo0 172.16.12.3/…

WEB前端表單及表格標簽綜合案例

表單標簽綜合案例&#xff1a; 源代碼&#xff1a; <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>…

實戰項目3(04)

??????目錄 ??????任務場景一 【r1配置】 【sw1配置】 任務場景二 【r1配置】 【sw1配置】 【sw2配置】 任務場景一 某公司網絡為了減少廣播包對網絡的影響&#xff0c;網絡管理員對網絡進行了VLAN劃分&#xff0c;完成VLAN劃分后&#xff0c;為了不影響VL…

tinyint(3)數據類型講解

TINYINT(3) 是數據庫中用于定義字段數據類型的一種寫法&#xff0c;常見于 MySQL 等數據庫系統。下面來詳細了解其含義和作用&#xff1a; 數據類型本質 TINYINT 屬于整數類型&#xff0c;在不同的數據庫系統中&#xff0c;它所占用的存儲空間和表示范圍通常是固定的。以 MyS…

[原創](現代Delphi 12指南):[macOS 64bit App開發]: 如何獲取自身程序的所在的目錄?

[作者] 常用網名: 豬頭三 出生日期: 1981.XX.XX 企鵝交流: 643439947 個人網站: 80x86匯編小站 編程生涯: 2001年~至今[共24年] 職業生涯: 22年 開發語言: C/C++、80x86ASM、Object Pascal、Objective-C、C#、R、Python、PHP、Perl、 開發工具: Visual Studio、Delphi、XCode、…

自定義prometheus exporter實現監控阿里云RDS

# 自定義 Prometheus Exporter 實現多 RDS 數據采集## 背景1. Prometheus 官網提供的 MySQL Exporter 對于 MySQL 實例只能一個進程監控一個實例&#xff0c;數據庫實例很多的情況下&#xff0c;不方便管理。 2. 內部有定制化監控需求&#xff0c;RDS 默認無法實現&#xff0c;…

開放原子大賽石油軟件賽道參賽經驗分享

億級以上網格油藏模型三維可視化 一、賽項背景 油藏數值模擬是油氣田開發中至關重要的一環。油藏數值模擬將儲層與井的數學模型離散求解&#xff0c;預測地下流體、能量等的動態變化&#xff0c;廣泛應用于油田產量評估、開發方案優化等。隨著計算機技術特別是并行技術的發展…

學習方法討論——正論科舉精神的內核

世界不存在絕對的善&#xff0c;可以很善&#xff0c;但很難找到絕對的善&#xff0c;總帶些副作用&#xff1b;世界上也不存在絕對的惡&#xff0c;可以很惡&#xff0c;但很難找到絕對的惡&#xff0c;可以嘗試舉例&#xff1b; 再者&#xff0c;物極必反&#xff0c;當對一個…

網絡不再神秘:如何有效利用服務器網絡流量探針進行監控?

目錄 一、流量探針到底是個啥&#xff1f; 二、別只是“部署了”&#xff0c;關鍵在“用得好” 1. 做到“最小粒度”數據采集 2. 結合時間窗口&#xff0c;構建行為基線 3. 利用標簽化管理&#xff0c;提升可讀性 4. 把探針輸出對接安全告警系統 三、那如何部署才合理&a…

uniapp(微信小程序)>關于父子組件的樣式傳遞問題(自定義組件樣式穿透)

在父組件中給子組件添加類名,子組件的樣式由父組件決定 由于"微信小程序"存在【樣式隔離機制】&#xff0c;且默認設置為isolated(啟用樣式隔離)&#xff0c;因此這里給出以下兩種解決方案&#xff1a; // 小程序編譯機制 1. 當 <style scoped> 存在時&#…

基于FastAPI框架的日志模塊設計

以下是一個基于FastAPI框架設計的日志模塊&#xff0c;結合SQLite數據庫實現增刪改查功能的完整實現方案&#xff1a; 1. 項目結構 your_project/ ├── app/ │ ├── logs/ # 日志模塊目錄 │ │ ├── models.py # 數據庫模型定義 │ │ …

面試題:C++虛函數可以是內聯函數嗎?

目錄 1.引言 2.示例 3.總結 1.引言 為什么C的虛函數和內聯函數這兩個看似矛盾的特性能否共存&#xff1f;這個問題實際上觸及了C編譯期優化與運行時多態性之間的微妙平衡。我發現這個問題不僅是面試中的常見陷阱&#xff0c;更是理解C深層機制很好的一個點。 虛函數可以被聲…

用python清除PDF文件中的水印(Adobe Acrobat 無法刪除)

學校老師發的資料&#xff0c;有時候會帶水印&#xff0c;有點強迫癥的都想給它去掉。用Adobe Acrobat試了下&#xff0c;檢測不到水印&#xff0c;無法刪除&#xff01;分析發現原來這類PDF文件是用word編輯的&#xff0c;其中的水印是加在了頁眉中&#xff01; 自己動手想辦法…

Oracle中自定義異常內置異常嵌套異常的捕獲處理

一、異常類型分類 類型說明示例內置預定義異常Oracle已命名異常&#xff08;如NO_DATA_FOUND&#xff09;查詢無數據時觸發內置非預定義異常未命名的Oracle錯誤&#xff08;需用PRAGMA EXCEPTION_INIT關聯&#xff09;ORA-02290&#xff08;違反檢查約束&#xff09;自定義異常…

《Flutter社交應用暗黑奧秘:模式適配與色彩的藝術》

暗黑模式已從一種新奇的功能演變為用戶體驗中不可或缺的一環。對于Flutter開發者而言&#xff0c;如何在社交應用中完美實現暗黑模式適配與色彩對比度優化&#xff0c;是一場充滿挑戰與驚喜的技術探索之旅。 暗黑模式&#xff0c;絕非僅僅是將界面顏色反轉這么簡單。從用戶體驗…

【kubernetes】通過Sealos 命令行工具一鍵部署k8s集群

一、前言 1、sealos安裝k8s集群官網&#xff1a;K8s > Quick-start > Deploy-kubernetes | Sealos Docs 2、本文安裝的k8s版本為v1.28.9 3、以下是一些基本的安裝要求&#xff1a; 每個集群節點應該有不同的主機名。主機名不要帶下劃線。所有節點的時間需要同步。需要…

視覺-語言-動作模型:概念、進展、應用與挑戰(上)

25年5月來自 Cornell 大學、香港科大和希臘 U Peloponnese 的論文“Vision-Language-Action Models: Concepts, Progress, Applications and Challenges”。 視覺-語言-動作 (VLA) 模型標志著人工智能的變革性進步&#xff0c;旨在將感知、自然語言理解和具體動作統一在一個計…

Java筆記4

第一章 static關鍵字 2.1 概述 以前我們定義過如下類&#xff1a; public class Student {// 成員變量public String name;public char sex; // 男 女public int age;// 無參數構造方法public Student() {}// 有參數構造方法public Student(String a) {} }我們已經知道面向…

記一次redis未授權被種挖礦

#挖礦程序 /etc/httpgd /etc/nnt.sh #大小問 #定時任務名為root /var/spool/cron/root 內容&#xff1a;*/50 * * * * sh /etc/nnt.sh >/dev/null 2>&1 定時任務只有所有者可以寫&#xff0c;且chmod修改權限失敗。 #先查看定時任務的拓展屬性&#xff0c;不可變(i…