关于C++中vector的随笔

个人认为vector可以算是一个方便的动态数组,并且比传统的数组要好用。

在使用是涉及到几方面的功能:

1.添加数字,字符等 用push_back关键词

当然还有另一种方法  PS:自己感受一下

for(vector<int>::iterator it = vi.begin() ;

it !=vi.end() ; it++)

{

cout << *it << " " ;

}

2.定义二维数组

eg:定义一个3*3的二维数组

vector <   vector <int>   >   array(3);    //注意< >符号之间要有空格
                        for(int   i=0;i <3;i++)
                             array[i].resize(3);

输出       for(int   i=0;i <3;i++)
                        for(int   j=0;j <3;j++)
                             array[i][j]=(i*j);

for(int   i=0;i <3;i++)
                    {
                            for(int   j=0;j <3;j++)
                                  cout < <array[i][j] < < "   ";
                            cout < <endl;
                    }

3.排序 vector< int > vi

sort( vi.begin( ),vi.end( ) );    //从小到大

reverse( vi.begin( ),vi.begin( ) );  //从大到小

4.查找元素

vector<int> L;
             L.push_back( 1 );
             L.push_back( 2 );
             L.push_back( 3 );
             L.push_back( 4 );
             L.push_back( 5 );
             vector<int>::iterator result = find( L.begin( ), L.end( ), 3 );    //本例查找3
                if ( result == L.end( ) )               
                       cout << "No" << endl;         //没找到
                else                                          
                       cout << "Yes" << endl;       //找到

时间: 2024-11-10 21:34:41

关于C++中vector的随笔的相关文章

C++中vector reserve和resize函数

1.reserve 当内存受限时(此时虚拟内存都快耗尽),由于push_back由于每次发现存储空间不够时,默认会申请原来空间的两倍,此时申请空间时就会发生错误.因此如果知道 vector需要多少内存的话,最好先用 reserve申请一下空间 ,即预申请一定的空间. 2.resize 重新设置该容器的大小 <span style="font-size:14px;">// test_max.cpp : 定义控制台应用程序的入口点. #include "stdafx.

ogqvcC++中vector和链表插入问题

叔滨劐 ogqvcC++中vector和链表插入问题

Java中vector的使用方法

Vector的使用 vector类底层数组结构的,它包含可以使用整数索引进行访问的组件.不过,vector的大小可以根据需要增大或缩小,以适应创建vector后进行添加或移除项的操作,因此不需要考虑元素是否越界或者会不会浪费内存的问题. 由vector的iterator和listIterator方法所返回的迭代器是快速失败的:也即是它不能并发执行操作.如果在迭代器创建后的任意时间从结构上修改了向量(通过迭代器自身的remove或add方法之外的任何其他方式),则迭代器将抛出ConcurrentM

关于C++中vector和set使用sort方法进行排序

C++中vector和set都是非常方便的容器, sort方法是algorithm头文件里的一个标准函数,能进行高效的排序,默认是按元素从小到大排序 将sort方法用到vector和set中能实现多种符合自己需求的排序 首先sort方法可以对静态的数组进行排序 1 #include<iostream> 2 using namespace std; 3 int main(){ 4 int a[10] = { 9, 0, 1, 2, 3, 7, 4, 5, 100, 10 }; 5 sort(a,

在cmd中修改码率随笔

首先电脑中药存在ffmpeg工具: 码率转换:ffmpeg -y -i 0_100249.wav -ab 96k  0_100249_96kbl.mp3    ffmpeg:转换工具    -y:覆盖    -i:源文件    0_100249.wav:歌曲文件名称    -ab:码率    96k:码率转换成96k    0_100249_96kbl.mp3:转换后歌曲文件名称 在cmd中修改码率随笔,布布扣,bubuko.com

Java中Vector和ArrayList的区别

首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList.Vector和LinkedList.List用于存放多个元素,能够维护元素的次序,并且允许元素的重复. 3个具体实现类的相关区别如下: ArrayList是最常用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问.数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能力,就要讲已经有数组的数据复制到新的存储空间中.当从ArrayList的中间位置插入或者删除元素时,需要对数组

c++中vector的用法详解

c++中vector的用法详解 vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的. 用法: 1.文件包含: 首先在程序开头处加上#include<vector>以包含所需要的类文件vector 还有一定要加上using namespace std; 2.变量声明: 2.1 例:声明一个int向量以替代一维的数组:vector <int> a;(等于声明了一个

java中vector和array区别

java中vector和数组非常类似,两者之间也经常成对出现,下面是两者的比较: 1.数组:java arrays的元素个数不能下标越界,从很大程度上保证了java程序的安全性,但创建时必须指定数组的大小,并不能再改变. 2.vector:对比于array,当更多的元素被加入进来以至超出其容量时,vector的size会动态增长,而array容量是定死的.同时,vector在删除一些元素后,其所有下标大于被删除元素的元素都依次前移,并获得新下标比原来的小了).

C++的STL中vector内存分配方法的简单探索

STL中vector什么时候会自动分配内存,又是怎么分配的呢? 环境:Linux  CentOS 5.2 1.代码 #include <vector> #include <stdio.h> using namespace std; int main() { vector<int> x_vec; printf("data size : [%3d], mem size : [%3d]\n", x_vec.size(), x_vec.capacity())