c++培训周总结4

原创 2013年12月02日 23:30:17

培训部分

数据结构的概念:
   逻辑结构
   物理结构
   运算结构
  几个常用的数据结构:
   堆栈(栈)
   队列
   链表
   二叉树(有序)

数据结构的分类:
    抽象层——逻辑结构(人脑中)
    结构层——物理结构(计算机)
    实现层——运算结构(应用角度)


 逻辑结构的分类:
    集合结构(集) - 结构中的元素除了 同属于一个集合之外没有 其他的关系。
    线性结构(表) - 结构中的元素 是一对一的前后关系。(重点)
    树型结构(树) - 结构中的元素 是一对多的父子关系。
    网状结构 - 结构中的元素 是多对多的交叉映射关系。


物理结构的分类:
    顺序结构 - 数据存放在一片连续的内存地址中(不间断)。
    链式结构 - 链式结构的元素存放在不连续的内存地址中,因此存储时按节点存储,而不只是存储数据。一个节点包括数据和下一个节点的地址。
    

优缺点:
     顺序结构:随机访问方便,插入删除效率低,空间使用率低。
     链式结构:插入删除方便,随机访问效率低,空间使用率高。


顺序结构 链式结构 互补。

数组是一个常指针,不能改变指向的指针

完全二叉树 就是 前面n-1 是满的,最后一层可以不满,但是要 从左向右 连续排列。


快速排序

void quick_sort(int *a,size_t begin,size_t end)
{
size_t m=(begin+end)/2;
int p=a[m];
size_t i=begin,j=end;
while(i<j)
{
for(;!(i>=m || p<a[i]);++i);
if(i<m)
{
a[m]=a[i];
m=i;
}
for(;!( j<=m || p>a[j]);--j);
if(j>m)
{
a[m]=a[j];
m=j;
}
}
a[m]=p;
if(i-begin>1)
{
quick_sort(a,begin,m-1);
}
if(end-j>1)
{
quick_sort(a,j+1,end);
}
}



自学部分

String 和Array都是一种容器


容器运用时机 


vector
内部结构最简单,允许随机存取


deque
经常在序列头部和尾部安插和移动元素


list
经常在容器中执行元素的安插,移动和移除


set,multiset
经常需要根据某个准则来搜寻元素


容器内的型别 
container::value_type
都支持




container::key_type
关联式容器支持,set,map


container::key_compare
关联式容器支持


container::value_compare
关联式容器支持


explicit container::container(const CompFunc& op)
以op为准则产生一个容器
关联式容器支持


explicit container::container(const container& c)
都支持 


explicit container::container(const container& c)
vector,deque,list支持


container::container (size_type num,const T& value)
vector,deque,list,string支持
string不是引用传值


container::container(InputIterator beg,InputIterator end)
都支持


container::container(InputIterator beg,InputIterator end,const CompFunc& op)
关联式容器支持


bool container::empty比 size()==0快


size_type container::capacity() const
返回重新分配前最多元素个数
vector,strin支持


void  container::reserve(size_type num)
vector,string支持 


count,find,lower_bound,upper_bound,equal_range,key_comp,value_compare
void container::assign(size_type num,const T& value)
关联式容器支持


void container::assign(InputIterator begin,InputIterator end)
vector,deque,list ,string支持


at
vector,deque,string支持


operator[]
vector,deque,string支持


T& map::operator[](const key_type& key)
map支持


front(),back()
vector,deque,list支持


如果容器为空 rend()==rbegin()


iterator container::insert(const T& value)
pair<iterator,bool> container::insert(const T& value)
关联式容器+string支持


序列式操作一般返回void版本
关联式操作一般返回 iterator版本


void list::remove 只有list支持


 void container::resize(size_type num,T value)
vector,deque,list,string支持


配置器 
...


迭代器 
 *iter=42 等同于 iter=42


advance(InputIterator &pos,Dist n)
pos前进n



版权声明:随便转载..不要重复造轮子

相关文章推荐

C++培训:C++基础到高级知识总结

C++从基础如何才能走到高级呢?相信这是很多新手都存在的一个问题,一笑给大家总结一些知识,供大家参考!   C/C++遍布的领域有后端服务器,移动互联网后端,经典Windows界面开发,移动互联...
  • IT889
  • IT889
  • 2016-09-23 14:11
  • 378

Drupal开发培训Day4

视图——高级->上下文过滤,关连的使用   Day4 (注意:视图里关联的作用:获得字段的具体值,没有关联,则只能显示标题栏,不能显示具体值。设置关联后,必须重新设置字段,对字段进行配置) ...

Corel VideoStudio X4培训笔记(二)——制作简单短片

今天我们为大家介绍如何用会声会影制作短片,希望对大家有所帮助,大家若有问题,可以随时与我们联系,联系方式在文章的下方,谢谢。 一、软件介绍 Corel VideoStudio又叫会声会影,...

IBM Websphere培训4——连接池设置和Web服务器问题诊断

1.Websphere连接池设置可能引起的问题: (1).连接池都是大对象,比较消耗资源: 连接池中通常都是大对象,每个连接对象大约1~2MB,如果连接池设置过大,容易引起Websphere占用大...

java培训之junit4

java培训之junit4Junit主要讲三点:1. @Test 2. @Before 3. @RunWith(SpringJUnit4ClassRunner.class) @Contex...

【部门管理入门-4】培训管理办法

【正文】   --- 软件部培训管理办法   第一章、   总则... - 2 - 第二章、   培训计划... - 3 - 第三章、   培训组织... - 4 - 第四章...
  • jjkcom
  • jjkcom
  • 2011-09-22 12:49
  • 1646

从C++起步到MFC实战VC++软件工程师高端培训视频教程

从C++起步到MFC实战VC++软件工程师高端培训视频教程 本课程从C++起步、用户无需任何计算机基础,只需要懂的基本的电脑操作,既可学习本课程,本课程适合在校大学生,在职人员等,通过本课程...

Android 培训计划:如何从功能机时代的 C/C++ 工程师转型至 Android 工程师

作者:徐建祥 日期:2012/10/17 网址:http://www.anymobile.org Android 的成长历程也是中国手机史的一个快速发展历程,很多功能机的龙头企业沉沦了,也有些非...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)