成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳解C++數(shù)據(jù)結(jié)構(gòu)向量和數(shù)組

開發(fā) 后端
#include,是一個(gè)預(yù)處理器指令,它告訴編譯器包含后面的任何庫(kù)。在我們的例子中,這是標(biāo)準(zhǔn)vector庫(kù)。數(shù)組用于在單個(gè)變量中存儲(chǔ)多個(gè)值,而不是為每個(gè)值聲明單獨(dú)的變量。

[[404348]]

向量

#include,是一個(gè)預(yù)處理器指令,它告訴編譯器包含后面的任何庫(kù)。在我們的例子中,這是標(biāo)準(zhǔn)vector庫(kù)。

  1. #include <vector> 

創(chuàng)建向量的語(yǔ)法如下所示:

  1. std::vector<type> name

比如要定義一個(gè)int的向量calories_today:

  1. std::vector<int> calories_today; 

尖括號(hào)內(nèi)是向量的數(shù)據(jù)類型。尖括號(hào)之后是向量的名稱。

注意:vector 的類型(即里面存放的是什么數(shù)據(jù)類型)在聲明后是不能改變的。

初始化向量

  1. std::vector<double> some_vector = {0.25, 0.50, 0.75, 1.00}; 

現(xiàn)在我們有了一個(gè)向量,我們?nèi)绾卧L問(wèn)單個(gè)元素?這就是索引發(fā)揮作用的地方。

向量是 0 索引的,這意味著第一個(gè)元素的索引為 0,第二個(gè)索引為 1,依此類推vector[index]在向量名稱和內(nèi)部元素的索引號(hào)之后,使用帶方括號(hào)的表示法。

  1. #include <iostream> 
  2. #include <vector> 
  3.  
  4. int main() 
  5.     std::vector<double> some_vector = {0.25, 0.50, 0.75, 1.00}; 
  6.     std::cout << some_vector[0] << "\n"
  7.     std::cout << some_vector[1] << "\n"
  8.     std::cout << some_vector[2] << "\n"
  9.     std::cout << some_vector[3] << "\n"
  10.  
  11. 0.25 
  12. 0.5 
  13. 0.75 

添加和刪除元素

要將新元素添加到向量的末尾,我們可以使用該.push_back()函數(shù)。

  1. #include <iostream> 
  2. #include <vector> 
  3.  
  4. int main() 
  5.     std::vector<double> some_vector = {0.25, 0.50, 0.75, 1.00}; 
  6.     some_vector.push_back(2); 
  7.     std::cout << some_vector[4] << "\n"

還可以使用.pop_back().從向量的“后面”刪除元素。

  1. some_vector.pop_back(); 

向量的大小

不僅存儲(chǔ)元素;它還存儲(chǔ)向量的大小:

.size()函數(shù)返回向量中的元素?cái)?shù)

  1. #include <iostream> 
  2. #include <vector> 
  3.  
  4. int main() 
  5.     std::vector<double> some_vector = {5,7,9,4,6,8}; 
  6.     std::cout << some_vector.size() << "\n"

向量操作

我們可以使用for循環(huán),可以更改向量中的每個(gè)值

  1. #include <iostream> 
  2. #include <vector> 
  3.  
  4. int main() 
  5.     std::vector<double> vector = {5, 7, 9, 4, 6, 8}; 
  6.     for (int i = 0; i < vector.size(); i++) 
  7.     { 
  8.         vector[i] = vector[i] + 10; 
  9.         std::cout << vector[i]  << "\n"
  10.     } 
  11.  
  12. 15 
  13. 17 
  14. 19 
  15. 14 
  16. 16 
  17. 18 

編寫一個(gè)程序來(lái)計(jì)算向量中偶數(shù)之和與奇數(shù)之積。

假設(shè)我們有一個(gè)向量是{2, 4, 3, 6, 1, 9}。

然后程序應(yīng)該輸出

  1. Sum of even numbers is 12 
  2. Product of odd numbers is 27 

具體代碼如下

  1. #include <iostream> 
  2. #include <vector> 
  3.  
  4. int main() 
  5.     int total_even = 0; 
  6.     int product_odd = 1; 
  7.  
  8.     std::vector<int> vector = {2, 4, 3, 6, 1, 9}; 
  9.     for (int i = 0; i < vector.size(); i++) 
  10.     { 
  11.         if (vector[i] % 2 == 0){ 
  12.            total_even = vector[i] + total_even; 
  13.         }else
  14.            product_odd = vector[i] * product_odd; 
  15.         } 
  16.     } 
  17.     std::cout << "Sum of even: " << total_even << "\n"
  18.     std::cout << "Product of odd: " << product_odd; 

數(shù)組

數(shù)組用于在單個(gè)變量中存儲(chǔ)多個(gè)值,而不是為每個(gè)值聲明單獨(dú)的變量。

要聲明數(shù)組,請(qǐng)定義變量類型,指定數(shù)組的名稱,后跟方括號(hào) 并指定它應(yīng)存儲(chǔ)的元素?cái)?shù):

  1. int score[4]; 

我們現(xiàn)在已經(jīng)聲明了一個(gè)包含四個(gè)int數(shù)組的變量。要向其中插入值,在大括號(hào)內(nèi),我們可以使用將值放在逗號(hào)分隔的列表中,

  1. int score[4] = {1,2,3,4} 

下面是數(shù)組具體的定義和取值的方式

  1. #include <iostream> 
  2. using  namespace std; 
  3. int main() { 
  4.  
  5.  //定義方式1 
  6.  //數(shù)據(jù)類型 數(shù)組名[元素個(gè)數(shù)]; 
  7.  int score[10]; 
  8.  
  9.  //利用下標(biāo)賦值 
  10.  score[0] = 100; 
  11.  score[1] = 99; 
  12.  score[2] = 85; 
  13.  
  14.  //利用下標(biāo)輸出 
  15.  cout << score[0] << endl; 
  16.  cout << score[1] << endl; 
  17.  cout << score[2] << endl; 
  18.  
  19.  
  20.  //第二種定義方式 
  21.  //數(shù)據(jù)類型 數(shù)組名[元素個(gè)數(shù)] =  {值1,值2 ,值3 ...}; 
  22.  //如果{}內(nèi)不足10個(gè)數(shù)據(jù),剩余數(shù)據(jù)用0補(bǔ)全 
  23.  int score2[10] = { 100, 90,80,70,60,50,40,30,20,10 }; 
  24.   
  25.  //逐個(gè)輸出 
  26.  //cout << score2[0] << endl; 
  27.  //cout << score2[1] << endl; 
  28.  
  29.  //一個(gè)一個(gè)輸出太麻煩,因此可以利用循環(huán)進(jìn)行輸出 
  30.  for (int i = 0; i < 10; i++) 
  31.  { 
  32.   cout << score2[i] << endl; 
  33.  } 
  34.  
  35.  //定義方式3 
  36.  //數(shù)據(jù)類型 數(shù)組名[] =  {值1,值2 ,值3 ...}; 
  37.  int score3[] = { 100,90,80,70,60,50,40,30,20,10 }; 
  38.  for (int i = 0; i < 10; i++) 
  39.  { 
  40.   cout << score3[i] << endl; 
  41.  } 
  42.  

假設(shè)我們有一個(gè)數(shù)組是{ 4,2,8,0,5,7,1,3,9 }。編寫一個(gè)程序來(lái)實(shí)現(xiàn)冒泡排序。

具體代碼如下

  1. #include <iostream> 
  2. using namespace std; 
  3. int main() { 
  4.  
  5.  int arr[9] = { 4,2,8,0,5,7,1,3,9 }; 
  6.  
  7.  for (int i = 0; i < 9 - 1; i++) 
  8.  { 
  9.   for (int j = 0; j < 9 - 1 - i; j++) 
  10.   { 
  11.    if (arr[j] > arr[j + 1]) 
  12.    { 
  13.     int temp = arr[j]; 
  14.     arr[j] = arr[j + 1]; 
  15.     arr[j + 1] = temp
  16.    } 
  17.   } 
  18.  } 
  19.  
  20.  for (int i = 0; i < 9; i++) 
  21.  { 
  22.   cout << arr[i] << endl; 
  23.  } 
  24.      
  25.  

 【編輯推薦】

 

責(zé)任編輯:姜華 來(lái)源: Python之王
相關(guān)推薦

2024-01-15 06:01:36

C++數(shù)組

2012-02-02 10:21:05

單鏈表nexthead

2010-01-27 15:58:35

C++數(shù)據(jù)結(jié)構(gòu)

2011-04-11 17:09:37

稀疏矩陣矩陣C++

2023-09-15 10:33:41

算法數(shù)據(jù)結(jié)構(gòu)

2011-04-11 11:23:17

隊(duì)列數(shù)據(jù)結(jié)構(gòu)

2011-04-11 12:22:11

數(shù)據(jù)結(jié)構(gòu)C++

2011-04-11 12:48:36

隊(duì)列數(shù)據(jù)結(jié)構(gòu)C++

2009-11-09 11:05:41

ibmdwRational

2023-03-28 07:44:23

數(shù)據(jù)結(jié)構(gòu)數(shù)組

2023-12-13 10:01:15

數(shù)據(jù)結(jié)構(gòu)c++編程

2011-07-20 17:10:54

C++

2020-06-29 07:44:36

Redis

2024-03-14 11:54:37

C++數(shù)據(jù)類型

2019-10-29 08:59:16

Redis底層數(shù)據(jù)

2013-05-10 15:27:07

R語(yǔ)言

2009-08-03 17:38:12

排序算法C#數(shù)據(jù)結(jié)構(gòu)

2016-08-24 20:09:27

Linux數(shù)據(jù)結(jié)構(gòu)位數(shù)組

2019-06-10 14:45:26

面試數(shù)據(jù)結(jié)構(gòu)算法

2021-08-29 07:41:48

數(shù)據(jù)HashMap底層
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 免费观看色 | 国产精品视频999 | 一级片在线播放 | 亚洲一区二区精品视频 | 色网站入口 | 毛片一级片 | a天堂在线 | 亚洲在线 | 丁香五月网久久综合 | 中文字幕第二区 | 日本高清视频在线播放 | 欧美三区视频 | 一区二区三区在线看 | 国产精品一区二区在线免费观看 | 亚洲精品一区二区三区丝袜 | 日韩一区二区三区在线观看 | 成人精品视频在线观看 | 亚洲码欧美码一区二区三区 | 国产精品一区二区三区四区 | 中文字幕高清av | 国产专区在线 | 亚洲国产一区二区三区 | 在线欧美亚洲 | 久久成人一区 | 亚洲欧美日韩精品久久亚洲区 | 精品久久成人 | 日韩欧美视频免费在线观看 | 91看片免费 | 日韩av在线不卡 | 美日韩精品 | 久草青青 | 国产精品色婷婷久久58 | 欧美毛片免费观看 | 成人精品在线观看 | 黄色91在线 | 午夜天堂| 黑人巨大精品欧美一区二区免费 | 国产欧美二区 | 亚洲视频中文字幕 | 国产精品久久久久久久久久久久久久 | 日干夜操 |