力扣hot4--雙指針

題目:

雙指針想法:

i 指針在數組不為 0 的地方停留,j 指針在每個地方停留,依次交換 i 和 j 指針。當 i 指針遍歷完所有數組元素時,j 指針指向的元素及后面的元素都為0。

代碼如下:

C++版本

class Solution {
public:void moveZeroes(vector<int>& nums) {int i=0;int len=nums.size();for(int j=0;j<len;j++){while(i<len && nums[i]==0){i++;}if(i==len){for(int k=j;k<len;k++){nums[k]=0;}break;}swap(nums[i++],nums[j]);}}
};

python版本:

class Solution:def moveZeroes(self, nums: List[int]) -> None:"""Do not return anything, modify nums in-place instead."""i=0len_nums=len(nums)for j in range(len_nums):while i<len_nums and nums[i]==0:i+=1if i==len_nums:for k in range(j,len_nums):nums[k]=0breaknums[i],nums[j]=nums[j],nums[i]i+=1

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

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

相關文章

冒泡、插入、希爾、選擇、堆排序、快速排序(附源碼)

目錄 插入排序&#xff1a; 核心思想&#xff1a; 時間復雜度&#xff1a; 冒泡排序&#xff1a; 核心思想&#xff1a; 時間復雜度&#xff1a; 希爾排序&#xff1a; 核心思想&#xff1a; 時間復雜度&#xff1a; 選擇排序&#xff1a; 核心思想&#xff1a; 時間…

告別手動填寫邀請碼,這款App數據統計工具幫你輕松實現

在移動互聯網時代&#xff0c;App的推廣和運營已成為各大企業的必修課。然而&#xff0c;面對錯綜復雜的推廣渠道和浩如煙海的數據&#xff0c;如何精準地追蹤用戶來源、優化推廣策略&#xff0c;一直是困擾著運營者的難題。今天&#xff0c;我們就來聊聊一款能夠幫助你輕松解決…

[C++核心編程](七):類和對象——運算符重載*

目錄 四則運算符重載 左移運算符重載 遞增運算符重載 賦值運算符重載 關系運算符重載 函數調用運算符重載 對已有的運算符重新進行定義&#xff0c;賦予其另一種功能&#xff0c;以適應不同的數據類型 四則運算符重載 對自定義數據類型實現四則運算&#xff08;加減乘除&…

新火種AI|AI商業中的里程碑事件已敲定! 歐盟27國一致通過《人工智能法案》。

作者&#xff1a;小巖 編輯&#xff1a;彩云 根據路透社2月2日消息&#xff0c;歐盟國家就《人工智能法案》立法正式達成協議。 此次立法的成功堪稱AI商業領域上的里程碑事件。因為單從商業視角來看&#xff0c;這一法案的通過率先為歐盟內部的人工智能創新提供了明確的法律…

在 Linux 上用 zram 替代傳統交換空間 | Linux 中國

我在我的電腦上花了很多時間&#xff08;我是說工作&#xff09;&#xff0c;我發現了很多有趣的東西。其中最近引起我注意的是 zram0 設備。我是在幾個月前寫一篇文章時第一次注意到它&#xff0c;它顯示在 lsblk 命令的輸出中&#xff1a; # lsblk NAME MAJ:MIN RM…

【VPX637】基于XCKU115 FPGA+ZU15EG MPSOC的6U VPX雙FMC接口通用信號處理平臺

VPX637是一款基于6U VPX總線架構的通用實時信號處理平臺&#xff0c;該平臺采用一片Xilinx的高性能Kintex UltraScale系列FPGA&#xff08;XCKU115-2FLVF1924I&#xff09;作為預處理單元&#xff0c;外掛2個FMC擴展接口&#xff0c;來完成數據采集、數據回放以及實時信號處理算…

[動態規劃,DFS深度搜索]滑雪

滑雪 題目描述 Michael喜歡滑雪&#xff0c;這并不奇怪&#xff0c;因為滑雪的確很刺激。可是為了獲得速度&#xff0c;滑的區域必須向下傾斜&#xff0c;而且當你滑到坡底&#xff0c;你不得不再次走上坡或者等待升降機來載你。Michael想知道在一個區域中的最長底滑坡。區域…

Java---文件,流???

文章目錄 1.遍歷文件夾2.遍歷子文件夾3.練習流4.以字節流的形式讀取文件內容5.以字節流的形式向文件寫入數據頂折糾問6 .寫入數據到文件 1.遍歷文件夾 一般說來操作系統都會安裝在C盤&#xff0c;所以會有一個 C:\WINDOWS目錄。 遍歷這個目錄下所有的文件(不用遍歷子目錄) 找出…

ssh連接ubantu失敗

新系統Ubuntu20.4 安裝ssh server 1. 安裝 openssh-server2. 開啟22號端口 # 安裝ssh服務 sudo apt-get install openssh-server # 安裝防火墻 sudo apt-get install ufw # 開啟防火墻 sudo ufw enable #放開22端口 sudo ufw allow 22 開啟22號端口 倘若ubuntu沒有開啟22…

HTTP/2、HTTP/3分別解決了什么問題

總的來說就是HTTP/1.1是請求-響應模型導致隊頭阻塞問題&#xff0c;HTTP2是TCP層面導致隊頭阻塞問題 HTTP/2 多路復用&#xff0c;解決了HTTP/1.1隊頭阻塞問題 HTTP/1.1 的實現是基于請求-響應模型的。同一個連接中&#xff0c;HTTP 完成一個事務&#xff08;請求與響應&…

3.4作業

課上代碼復習&#xff1a; 廣播接收端代碼: #include<myhead.h> int main(int argc, const char *argv[]) {//創建套接字int rfd socket(AF_INET,SOCK_DGRAM,0);if(rfd -1){perror("socket error");return -1;}printf("rfd %d\n",rfd);//填充地…

臺式電腦電源各線的電壓和電流輸出和輸出電流

臺式電腦電源是電腦硬件的重要組成部分。 它為計算機的各個部件提供所需的電壓和電流。 不同的硬件設備和組件有不同的電壓和電流輸出。 下面詳細介紹臺式電腦電源各線的電壓&#xff0c;包括3.3V、5V、12V、-12V、-5V和5VSB&#xff0c;以及它們的輸出電流和用途。 3.3V&#…

【AI+CAD】(一)ezdxf 解析DXF文件

DXF文件格式理解 DXF文件格式是矢量圖形文件格式&#xff0c;其詳細說明了如何表示不同的圖形元素。 DXF是一個矢量圖形文件&#xff0c;它捕獲CAD圖形的所有元素&#xff0c;例如文本&#xff0c;線條和形狀。更重要的是&#xff0c;DXF是用于在CAD應用程序之間傳輸數據的圖形…

STM32自學?I2C

這里只是大體介紹&#xff0c;具體的可參考STM32數據手冊

數據結構與算法-選擇排序

引言 在計算機科學中&#xff0c;數據結構和算法是兩個至關重要的基石。它們共同決定了程序的效率、可讀性和可維護性。本文我們將聚焦于一種基礎而直觀的排序算法——選擇排序&#xff0c;并探討其內在的工作機制以及在實際應用中的優缺點。 一、什么是選擇排序&#xff1f; …

Leetcode 3067. Count Pairs of Connectable Servers in a Weighted Tree Network

Leetcode 3067. Count Pairs of Connectable Servers in a Weighted Tree Network 1. 解題思路2. 代碼實現 題目鏈接&#xff1a;3067. Count Pairs of Connectable Servers in a Weighted Tree Network 1. 解題思路 這一題沒想到什么好的方法&#xff0c;走的是暴力求解的路…

xss.haozi.me:0x07

<img src1 onerroralert(1)

Spring MVC ThemeResolver原理解析

在Spring MVC框架中&#xff0c;ThemeResolver&#xff08;主題解析器&#xff09;是一個重要但經常被忽視的組件。它負責解析和管理Web應用程序中的主題設置&#xff0c;允許用戶根據不同的需求和偏好切換界面主題。ThemeResolver為開發者提供了一種靈活的方式來控制應用程序的…

tomcat下載安裝配置教程

tomcat下載安裝配置教程 我是使用tomcat下載安裝及配置教程_tomcat安裝-CSDN博客 此貼來進行安裝配置&#xff0c;原文21年已經有些許不同。 下載tomcat 官網&#xff1a;http://tomcat.apache.org/ 我們老師讓安裝8.5以上&#xff0c;所以我直接選擇版本9 點擊9頁面之后…

DPDK常用API合集三

librte_timer 此庫為 DPDK 執行單元提供定時器服務&#xff0c;提供異步執行函數的能力。它可以是周期性的函數調用&#xff0c;也可以是一次性調用。它使用環境抽象層&#xff08;EAL&#xff09;提供的定時器接口獲取精確的時間參考&#xff0c;并可以根據需要以每個核心為基…