Program C++ untuk menukar vektor kepada senarai

WBOY
Lepaskan: 2023-09-10 08:49:03
ke hadapan
1331 orang telah melayarinya

Program C++ untuk menukar vektor kepada senarai

Vektor dalam C++ ialah tatasusunan dinamik yang boleh mengandungi sebarang jenis data, sama ada ditentukan pengguna atau primitif. Dinamik bermakna saiz vektor boleh bertambah atau berkurang berdasarkan operasi. Vektor menyokong pelbagai fungsi dan manipulasi data adalah sangat mudah. Sebaliknya, senarai adalah bekas yang sama dengan vektor, tetapi berbanding dengan pelaksanaan tatasusunan vektor, pelaksanaan senarai adalah berdasarkan senarai terpaut dua kali. Senarai menyediakan operasi masa malar yang sama di mana-mana di dalamnya, yang merupakan ciri utama menggunakan senarai. Mari kita lihat kaedah utama untuk menukar vektor kepada senarai.

Gunakan pembina julat

Untuk menggunakan pembina julat, anda mesti menghantar penunjuk mula dan akhir vektor sebagai parameter kepada pembina semasa membuat senarai.

Tatabahasa

vector <int> ip;
list <int> op( ip.begin(), ip.end() );
Salin selepas log masuk

Algoritma

  • Simpan input dalam vektor.
  • Lepaskan penunjuk mula dan akhir vektor kepada pembina julat senarai.
  • Tunjukkan kandungan senarai.

Contoh

#include <iostream>
#include <vector>
#include <list>

using namespace std;
list <int> solve( vector <int> ip) {
   //initialise the list
   list <int> op( ip.begin(), ip.end() );
   return op;
}

int main() {
   vector <int> ip( { 15, 20, 65, 30, 24, 33, 12, 29, 36, 58, 96, 88, 30, 71 } );
   list <int> op = solve( ip );

   //display the input
   cout<< "The input vector is: ";
   for( int i : ip ) {
      cout<< i << " ";
   }

   //display the output
   cout << "\nThe output list is: ";
   for( int j : op ) {
      cout << j << " ";
   }
   return 0;
}
Salin selepas log masuk

Output

The input vector is: 15 20 65 30 24 33 12 29 36 58 96 88 30 71 
The output list is: 15 20 65 30 24 33 12 29 36 58 96 88 30 71
Salin selepas log masuk

Gunakan fungsi tetapkan std::list

Penggunaan std::list adalah serupa dengan penggunaan pembina julat. Kami lulus penunjuk permulaan dan akhir vektor dengan cara yang sama seperti pembina julat.

Tatabahasa

vector <int> ip;
list <int> op();
op.assign(ip.begin(), ip.end());
Salin selepas log masuk

Algoritma

  • Simpan input dalam vektor.
  • Tentukan senarai baharu.
  • Lepaskan penunjuk mula dan akhir vektor kepada fungsi tetapkan senarai
  • Tunjukkan kandungan senarai.

Contoh

#include <iostream>
#include <vector>
#include <list>

using namespace std;
list <int> solve( vector <int> ip) {

   //initialise the list
   list <int> op;
   op.assign( ip.begin(), ip.end() );
   return op;
}

int main() {
   vector <int> ip( { 40, 77, 8, 65, 92 ,13, 72, 30, 67, 12, 88, 37, 18, 23, 41} );
   list <int> op = solve( ip );

   //display the input
   cout<< "The input vector is: ";
   for( int i : ip ) {
      cout<< i << " ";
   }

   //display the output
   cout << "\nThe output list is: ";
   for( int j : op ) {
      cout << j << " ";
   }
   return 0;
}
Salin selepas log masuk

Output

The input vector is: 40 77 8 65 92 13 72 30 67 12 88 37 18 23 41 
The output list is: 40 77 8 65 92 13 72 30 67 12 88 37 18 23 41 
Salin selepas log masuk

Gunakan fungsi sisipan senarai

Kita boleh memasukkan data daripada vektor ke dalam senarai menggunakan fungsi sisip senarai. Senarai memerlukan penunjuk ke permulaan senarai dan penunjuk ke permulaan dan penghujung vektor.

Tatabahasa

vector <int> ip;
list <int> op();
op.insert(op.begin(), ip.begin(), ip.end());
Salin selepas log masuk

Algoritma

  • Simpan input dalam vektor.
  • Tentukan senarai baharu.
  • Lepasi penunjuk permulaan senarai dan penunjuk mula dan tamat
  • Vektor fungsi sisipan senarai.
  • Tunjukkan kandungan senarai.

Contoh

#include <iostream>
#include <vector>
#include <list>

using namespace std;
list <int> solve( vector <int> ip) {

   //initialise the list
   list <int> op;
   op.insert( op.begin(), ip.begin(), ip.end() );
   return op;
}

int main() {
   vector <int> ip( { 30, 82, 7, 13, 69, 53, 70, 19, 73, 46, 26, 11, 37, 83} );
   list <int> op = solve( ip );

   //display the input
   cout<< "The input vector is: ";

   for( int i : ip ) {
      cout<< i << " ";
   }

   //display the output
   cout << "\nThe output list is: ";
   for( int j : op ) {
      cout << j << " ";
   }
   return 0;
}
Salin selepas log masuk

Output

The input vector is: 30 82 7 13 69 53 70 19 73 46 26 11 37 83 
The output list is: 30 82 7 13 69 53 70 19 73 46 26 11 37 83 
Salin selepas log masuk

Kesimpulan

Dalam C++, menukar vektor kepada senarai mempunyai faedah kerumitan operasi seragam di mana-mana dalam senarai. Terdapat beberapa cara untuk menukar vektor kepada senarai. Walau bagaimanapun, kami hanya menyebut kaedah paling mudah dan terpantas di sini.

Atas ialah kandungan terperinci Program C++ untuk menukar vektor kepada senarai. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan