C++ LeeCode題目:比特位計(jì)數(shù)和買賣股票的最佳時(shí)機(jī)
一、比特位計(jì)數(shù)
一、題目
二、代碼
class Solution { public: vector<int> countBits(int n) { vector<int> num; for(int i=0;i<=n;i++){//遍歷[0,n],計(jì)算每個(gè)值對(duì)應(yīng)二進(jìn)制1的個(gè)數(shù) num.push_back(countOne(i)); } return num; } public: int countOne(int x){//計(jì)算當(dāng)前十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制后1的個(gè)數(shù) if (x==0) return 0; else if (x==1) return 1; else if(x/2>0&&x/2<1){//如果當(dāng)前為最后的商時(shí) return 1; }else{ return countOne(x/2) + x%2; } } };
二、買賣股票的最佳時(shí)機(jī)
一、題目
二、代碼
class Solution { public: int maxProfit(vector<int>& prices) {//動(dòng)態(tài)規(guī)劃 int profit = 0;//最大利潤(rùn) int enter = prices[0];//當(dāng)前股票的進(jìn)價(jià) for(int i=1;i<prices.size();i++) { if(enter>prices[i]){//當(dāng)前進(jìn)價(jià)更低時(shí),修改進(jìn)價(jià),保留之前的最大利潤(rùn)值 enter = prices[i]; }else if(profit<prices[i] - enter){//當(dāng)前賣出獲取的利潤(rùn)較高時(shí),修改利潤(rùn)值,保留之前的最小進(jìn)價(jià) profit = prices[i] - enter; } } return profit; } };
總結(jié)
本篇文章就到這里了,希望能夠給您帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
C++11, 14, 17對(duì)tuple元素的訪問(wèn)詳情
這篇文章主要介紹了C++11, 14, 17對(duì)tuple元素的訪問(wèn)詳情,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11C++17實(shí)現(xiàn)flyweight_factory模板類及使用示例詳解
這篇文章主要為大家介紹了C++17實(shí)現(xiàn)flyweight_factory模板類及使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08C語(yǔ)言超詳細(xì)講解棧與隊(duì)列實(shí)現(xiàn)實(shí)例
棧和隊(duì)列,嚴(yán)格意義上來(lái)說(shuō),也屬于線性表,因?yàn)樗鼈円捕加糜诖鎯?chǔ)邏輯關(guān)系為?"一對(duì)一"?的數(shù)據(jù),但由于它們比較特殊,因此將其單獨(dú)作為一章,做重點(diǎn)講解2022-03-03C語(yǔ)言動(dòng)態(tài)內(nèi)存分配圖文講解
給數(shù)組分配多大的空間?你是否和初學(xué)C時(shí)的我一樣,有過(guò)這樣的疑問(wèn)。這一期就來(lái)聊一聊動(dòng)態(tài)內(nèi)存的分配,讀完這篇文章,你可能對(duì)內(nèi)存的分配有一個(gè)更好的理解2023-01-01C語(yǔ)言 if else 語(yǔ)句詳細(xì)講解
本文主要介紹C語(yǔ)言中的if else,這里詳細(xì)介紹了if else 語(yǔ)句并提供了簡(jiǎn)單的示例代碼,希望能幫助編程入門的小伙伴學(xué)習(xí)2016-07-07C++實(shí)現(xiàn)LeetCode(20.驗(yàn)證括號(hào))
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(20.驗(yàn)證括號(hào)),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07C/C++中運(yùn)算符的優(yōu)先級(jí)、運(yùn)算符的結(jié)合性詳解
這篇文章主要介紹了C/C++中運(yùn)算符的優(yōu)先級(jí)、運(yùn)算符的結(jié)合性詳解的相關(guān)資料,需要的朋友可以參考下2017-02-02如何實(shí)現(xiàn)socket網(wǎng)絡(luò)編程的多線程
首先,學(xué)好計(jì)算機(jī)網(wǎng)絡(luò)知識(shí)真的很重要。雖然,學(xué)不好不會(huì)影響理解下面這個(gè)關(guān)于宏觀講解,但是,學(xué)好了可以自己打漁吃,學(xué)不好就只能知道眼前有魚(yú)吃卻打不到漁。在Java中網(wǎng)絡(luò)程序有2種協(xié)議:TCP和UDP,下面可以和小編一起學(xué)習(xí)下2019-05-05C++中main函數(shù)怎樣調(diào)用類內(nèi)函數(shù)
這篇文章主要介紹了C++中main函數(shù)怎樣調(diào)用類內(nèi)函數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08