力扣118.楊輝三角

思路

1.新建一個vector的vector

2.先把空間開出來,然后再把里面的值給一個個修改

開空間的手段:new、構造函數、reserve、resize

因為我們之后要修改里面的數據,這就意味著我們需要去讀取這個數據并修改,

如果用reserve的話,我們就僅僅是把空間給開出來了,但是里面是沒辦法訪問的,因為我們此時的size為0,相當于此時的數組只有0個數據,我們就不能修改 arr[ 1 ] 等值;所以我們需要能夠讀取

當我們用resize的時候,相當于我們做了int arr[ 10 ];此時里面的是個元素雖然是隨機值,但是起碼是可以修改了

resize:開n個空間,可以放初始值

構造函數:第二個重載支持創建多個vector和初始化

這樣也是可以的,也能做到初始化后的隨意修改,以下內容我們用的是resize,結尾有構造函數的實現方式

3.我們要開多大的空間呢?

對于這個二維數組來說,我們要開的空間是能夠放下多少行一維數組,而一維數組要開的空間是等差遞增的

所以:

行:對于vector<vector<int>>,我們開numRows個空間放numRows個vector<int>數組

列:對于vector<int>,我們第一行開一個,第二行開兩個,以此類推?

因為楊輝三角第一個和最后一個是1,所以可以在這里順便處理初始化的值,但是這里并不方便處理其他位置的值,

4.修改的是每個vector<int>的值

因為我們前面已經把那些值為1的位置給賦值了,所以現在就可以直接把那些是初始值的位置給按照楊輝三角的規則來修改值了(就是因為我們用的是resize,所以我們現在可以隨便進行修改值)

5.返回對應的值

,要求我們返回那個二維數組,所以我們就直接返回

最終整合:

用resize來解決的

用構造函數來解決的

(以下的注釋:原本打算把swap的地方直接用匿名對象作為函數參數,但是swap的交換參數是vector&,引用一個生命周期)

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

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

相關文章

Python 網絡爬蟲 —— 提交信息到網頁

一、模塊核心邏輯“提交信息到網頁” 是網絡交互關鍵環節&#xff0c;借助 requests 庫的 post() 函數&#xff0c;能模擬瀏覽器向網頁發數據&#xff08;如表單、文件 &#xff09;&#xff0c;實現信息上傳&#xff0c;讓我們能與網頁背后的服務器 “溝通”&#xff0c;像改密…

SpringMVC4

一、SpringMVC 注解與項目開發流程1.1注解的生命周期- Target、Retention 等元注解&#xff1a;- Target(ElementType.TYPE) &#xff1a;說明這個注解只能用在類、接口上。- Retention(RetentionPolicy.RUNTIME) &#xff1a;說明注解在運行時保留&#xff0c;能通過反射獲取…

數據結構排序算法總結(C語言實現)

以下是常見排序算法的總結及C語言實現&#xff0c;包含時間復雜度、空間復雜度和穩定性分析&#xff1a;1. 冒泡排序 (Bubble Sort)思想&#xff1a;重復比較相鄰元素&#xff0c;將較大元素向后移動。 時間復雜度&#xff1a;O(n)&#xff08;最好O(n)&#xff0c;最壞O(n)) 空…

嵌入式學習-PyTorch(2)-day19

很久沒有學了&#xff0c;期間打點滴打了一個多星期&#xff0c;太累了&#xff0c;再加上學了一下Python語法基礎&#xff0c;再終于開始重新學習pytorchtensorboard 的使用import torch from torch.utils.tensorboard import SummaryWriter writer SummaryWriter("logs…

Prompt Engineering 快速入門+實戰案例

資料來源&#xff1a;火山引擎-開發者社區 引言 什么是 prompt A prompt is an input to a Generative AI model, that is used to guide its output. Prompt engineering is the process of writing effective instructions for a model, such that it consistently generat…

「源力覺醒 創作者計劃」_文心開源模型(ERNIE-4.5-VL-28B-A3B-PT)使用心得

文章目錄背景操作流程開源模型選擇算力服務器平臺開通部署一個算力服務器登錄GPU算力服務器進行模型的部署FastDeploy 快速部署服務安裝paddlepaddle-gpu1. 降級沖突的庫版本安裝fastdeploy直接部署模型&#xff08;此處大約花費15分鐘時間&#xff09;放行服務端口供公網訪問最…

P10719 [GESP202406 五級] 黑白格

題目傳送門 前言&#xff1a;不是這樣例有點過分了哈&#xff1a; 這是我沒考慮到無解的情況的得分&#xff1a; 這是我考慮了的得分&#xff1a; 總而言之&#xff0c;就是一個Subtask 你沒考慮無解的情況&#xff08;除了Subtask #0&#xff09;,就會WA一大片,然后這個Subt…

AWS RDS PostgreSQL可觀測性最佳實踐

AWS RDS PostgreSQL 介紹AWS RDS PostgreSQL 是亞馬遜云服務&#xff08;AWS&#xff09;提供的托管型 PostgreSQL 數據庫服務。托管服務&#xff1a;AWS 管理數據庫的底層基礎設施&#xff0c;包括硬件、操作系統、數據庫引擎等&#xff0c;用戶無需自行維護。高性能&#xff…

C++——set,map的模擬實現

文章目錄前言紅黑樹的改變set的模擬實現基本框架迭代器插入源碼map模擬實現基礎框架迭代器插入賦值重載源碼測試代碼前言 set&#xff0c;map底層使用紅黑樹這種平衡二叉搜索樹來組織元素 &#xff0c;這使得set, map能夠提供對數時間復雜度的查找、插入和刪除操作。 下面都是基…

LabVIEW液壓機智能監控

?基于LabVIEW平臺&#xff0c;結合西門子、研華等硬件&#xff0c;構建液壓機實時監控系統。通過 OPC 通信技術實現上位機與 PLC 的數據交互&#xff0c;解決傳統監控系統數據采集滯后、存儲有限、參數調控不便等問題&#xff0c;可精準采集沖壓過程中的位置、速度、壓力等參數…

15. 什么是 xss 攻擊?怎么防護

總結 跨站腳本攻擊&#xff0c;注入惡意腳本敏感字符轉義&#xff1a;“<”,“/”前端可以抓包篡改主要后臺處理&#xff0c;轉義什么是 XSS 攻擊&#xff1f;怎么防護 概述 XSS&#xff08;Cross-Site Scripting&#xff0c;跨站腳本攻擊&#xff09;是一種常見的 Web 安全…

更換docker工作目錄

使用環境 由于默認系統盤比較小docker鏡像很容易就占滿&#xff0c;需要掛載新的磁盤修改docker的默認工作目錄 環境&#xff1a;centos7 docker默認工作目錄: /var/lib/docker/ 新的工作目錄&#xff1a;/home/docker-data【自己手動創建&#xff0c;一般掛在新加的磁盤下面】…

算法學習筆記:26.二叉搜索樹(生日限定版)——從原理到實戰,涵蓋 LeetCode 與考研 408 例題

二叉搜索樹&#xff08;Binary Search Tree&#xff0c;簡稱 BST&#xff09;是一種特殊的二叉樹&#xff0c;因其高效的查找、插入和刪除操作&#xff0c;成為計算機科學中最重要的數據結構之一。BST 的核心特性是 “左小右大”&#xff0c;這一特性使其在數據檢索、排序和索引…

共生型企業:駕馭AI自動化(事+AI)與人類增強(人+AI)的雙重前沿

目錄 引言&#xff1a;人工智能的雙重前沿 第一部分&#xff1a;自動化范式&#xff08;事AI&#xff09;——重新定義卓越運營 第一章&#xff1a;智能自動化的機制 第二章&#xff1a;自動化驅動的行業轉型 第三章&#xff1a;自動化的經濟演算 第二部分&#xff1a;協…

TypeScript的export用法

在 TypeScript 中&#xff0c;export 用于將模塊中的變量、函數、類、類型等暴露給外部使用。export 語法允許將模塊化的代碼分割并在其他文件中導入。 1. 命名導出&#xff08;Named Export&#xff09; 命名導出是 TypeScript 中最常見的一種導出方式&#xff0c;它允許你導出…

數據結構-2(鏈表)

一、思維導圖二、鏈表的反轉def reverse(self):"""思路&#xff1a;1、設置previous_node、current、next_node三個變量,目標是將current和previous_node逐步向后循環并逐步進行反轉,知道所有元素都被反轉2、但唯一的問題是&#xff1a;一旦current.next反轉為向…

ros2 標定相機

一個終端執行&#xff1a; ros2 run image_tools cam2image --ros-args -p width:640 -p height:480 -p frequency:30.0 -p device_id:-1 -r /image:/camera/image_raw另一個終端執行&#xff1a;8x6 是格子角點數量&#xff0c;0.028是格子尺寸 ros2 run camera_calibration …

IsaacLab學習記錄(二)

二、導入并訓練自己的機器人1、urdf等其他格式轉usd&#xff08;工具在./scrips/tools/&#xff09;???維度????URDF (Unified Robot Description Format)????USD (Universal Scene Description)????定位??機器人模型描述標準&#xff08;僅描述單機器人&…

基于Rust Softplus 函數實踐方法

Softplus 函數 Softplus 函數是神經網絡中常用的激活函數之一,定義為: ? Softplus函數導數 ? 是 sigmoid 函數。Softplus 處處可導,并且導數恰好是 sigmoid。 它是 ReLU 函數的平滑近似,具有連續可導的特性,適合需要梯度優化的場景。 數學特性 平滑性:導數為 Sig…

Ubuntu服務器安裝Miniconda

下載 Miniconda 安裝腳本&#xff08;如果能聯網&#xff09;wget https://repo.anaconda.com/miniconda/Miniconda3-py39_24.1.2-0-Linux-x86_64.sh -O Miniconda3.sh安裝 Miniconda 到 /opt/condabash Miniconda3.sh -b -p /opt/conda激活 conda/opt/conda/bin/conda init ba…