社区
数据结构与算法
帖子详情
请问哪里可以找到STL各种操作的复杂度保证?
DRACULAX05
2006-09-07 09:37:56
大家顺便推荐些算法的书,回帖有分
...全文
191
12
打赏
收藏
请问哪里可以找到STL各种操作的复杂度保证?
大家顺便推荐些算法的书,回帖有分
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
anomone1208
2006-09-16
打赏
举报
回复
Josuttis的《The C++ Standard Library》 上有关于STL复杂度保证的东西
beesharp
2006-09-07
打赏
举报
回复
接分~
其实自己看下STL的源码,然后自己分析一下复杂度不就行了~
ensoniq
2006-09-07
打赏
举报
回复
来问我吧,我来告诉你
dudu0812
2006-09-07
打赏
举报
回复
不知道,呵呵
圣殿骑士18
2006-09-07
打赏
举报
回复
接分
handsomge
2006-09-07
打赏
举报
回复
C++手册
DRACULAX05
2006-09-07
打赏
举报
回复
晕倒,至少回答我的问题或推荐本书再接分吧
halou
2006-09-07
打赏
举报
回复
。。。。。。。
vicqqq
2006-09-07
打赏
举报
回复
jf
up
arpanet
2006-09-07
打赏
举报
回复
接分
jixingzhong
2006-09-07
打赏
举报
回复
算法,
可以看看 算法设计与分析,
这本书很不错的。
jixingzhong
2006-09-07
打赏
举报
回复
STL 文档。
如何学习ACM,看后受益匪浅
大家都是抱着对算法与数据结构极大的兴趣才参加集训的,我们也希望大家学有所成,但是刚刚接触信息学领域的同学往往存在很多困惑,不知道从何入手学习,在这篇向导里,我希望能将自己不多的经验与大家分享,希望对各位有所帮助. 一、语言是最重要的基本功 无论侧重于什么方面,只要是通过计算机程序去最终实现的竞赛,语言都是大家要过的第一道关.亚洲赛区的比赛支持的语言包括C/C++与JAVA.虽然JAVA在应用极为广泛,但是其运行速度不可恭维.而且在以往的比赛中来看,大多数队伍还是采用了C或者C++.而且C语言是大家接触的第一门编程语言,所以我们集训队都采用C和C++混编的方式写代码. 新来的同学可能C的基础知识刚刚学完,还没有接触过C++,其实在赛场上使用纯C的选手还是大有人在的,它们主要是看重了纯C在效率上的优势,所以这部分同学如果时间有限,并不需要急着去学习新的语言,只要提高了自己在算法设计上的造诣,纯C一样能发挥巨大的威力.但是我还是希望大家都能够学点C++. C++相对于C,在输入输出流上的封装大大方便了我们的
操作
,同时降低了出错的可能性,并且能够很好地实现标准流与文件流的切换,方便了调试的工作。如果有些同学比较在意这点,可以尝试C和C++的混编,毕竟仅仅学习C++的流
操作
还是不花什么时间的。 C++的另一个支持来源于标准模版库(
STL
),库中提供的对于基本数据结构的统一接口
操作
和基本算法的实现可以缩减我们编写代码的长度,这可以节省一些时间。但是,与此相对的,使用
STL
要在效率上做出一些牺牲,对于输入规模很大的题目,有时候必须放弃
STL
,这意味着我们不能存在“有了
STL
就可以不去管基本算法的实现”的想法;另外,熟练和恰当地使用
STL
必须经过一定时间的积累,准确地了解各种
操作
的时间
复杂
度,切忌对
STL
中不熟悉的部分滥用,因为这其中蕴涵着许多初学者不易发现的陷阱。像
STL
中的很多容器, vector,queue,stack,map,set等一定要比较熟悉,
STL
中的sort是必需要掌握的.掌握这些
STL
知识后写代码的时候相对于纯C会节省不少时间. C语言学习推荐:C程序设计(谭浩强编著) C++学习推荐: C++Prime, C++大学教程.(其实基本上的C++教程都行的…)
STL
学习推荐: C++Prime,
STL
标准库.(理论联系实际,边学就用学的最快) 二、以数学为主的基础知识十分重要 虽然被定性为程序设计竞赛,但是参赛选手所遇到的问题更多的是没有解决问题的思路,而不是有了思路却死活不能实现,这就是平时积累的基础知识不够。竞赛中对于基础学科的涉及主要集中于数学,此外对于物理、电路等等也可能有一定应用,但是不多。因此,大一的同学也不必为自己还没学数据结构而感到不知从何入手提高,把数学捡起来吧!下面来谈谈在竞赛中应用的数学的主要分支。 1、离散数学——作为计算机学科的基础,离散数学是竞赛中涉及最多的数学分支,其重中之重又在于图论和组合数学,尤其是图论。 图论之所以运用最多是因为它的变化最多,而且可以轻易地结合基本数据结构和许多算法的基本思想,较多用到的知识包括连通性判断、DFS和BFS,关节点和关键路径、欧拉回路、最小生成树、最短路径、二部图匹配和网络流等等。虽然这部分的比重很大,但是往往也是竞赛中的难题所在,如果有初学者对于这部分的某些具体内容暂时感到力不从心,也不必着急,可以慢慢积累。 竞赛中设计的组合计数问题大都需要用组合数学来解决,组合数学中的知识相比于图论要简单一些,很多知识对于小学上过奥校的同学来说已经十分熟悉,但是也有一些部分需要先对代数结构中的群论有初步了解才能进行学习。组合数学在竞赛中很少以难题的形式出现,但是如果积累不够,任何一道这方面的题目却都有可能成为难题。 2、数论——以素数判断和同余为模型构造出来的题目往往需要较多的数论知识来解决,这部分在竞赛中的比重并不大,但只要来上一道,也足以使知识不足的人冥思苦想上一阵时间。素数判断和同余最常见的是在以密码学为背景的题目中出现,在运用密码学常识确定大概的过程之后,核心算法往往要涉及数论的内容。 3、计算几何——计算几何相比于其它部分来说是比较独立的,就是说它和其它的知识点很少有过多的结合,较常用到的部分包括——线段相交的判断、多边形面积的计算、内点外点的判断、凸包等等。计算几何的题目难度不会很大,但也永远不会成为最弱的题。 4、线性代数——对线性代数的应用都是围绕矩阵展开的,一些表面上是模拟的题目往往可以借助于矩阵来
找到
更好的算法。 5、概率论——竞赛是以黑箱来判卷的,这就是说你几乎不能动使用概率算法的念头,但这也并不是说概率就没有用。关于这一点,只有通过一定的练习才能体会。而且近年来概率题出现的次数越来越多了.
【算法】C++
STL
容器时间
复杂
度|时间
复杂
度计算|常见排序算法及其时间
复杂
度
【时间
复杂
度】时间
复杂
度https://blog.csdn.net/bandaoyu/article/details/86447291 map, set, multimap, and multiset 上述四种容器采用红黑树实现,红黑树是平衡二叉树的一种。不同
操作
的时间
复杂
度近似为: 插入: O(logN) 查看:O(logN) 删除:O(logN) hash_map, hash_set.........
【算法】C++
STL
容器时间
复杂
度|时间
复杂
度计算|常见排序算法及其时间
复杂
度...
目录 常见排序算法及其时间
复杂
度 C++
STL
容器时间
复杂
度| map, set, multimap, and multiset hash_map, hash_set, hash_multimap, and hash_multiset 程序的时间
复杂
度计算 计算时间
复杂
度--(简单版) 常见排序算法及其时间
复杂
度 常见排序算法及其时间...
C++
STL
排序
STL
中的排序函数 1.Sort函数 功能:对给定的区间所有元素进行排序 排序算法:快速排序,堆排序,插入排序 快速排序的最优时间
复杂
度:O(nlogn),最差时间
复杂
度为:O(n^2) 插入排序的最优时间
复杂
度:O(N),最差时间
复杂
度为:O(N^2) 堆排序的最优时间
复杂
度为:O(nlogn),最差时间
复杂
度为:O(nlogn) 源码: //1.快速排序 //2.堆排序 //3.插入排序 template <class _RandomAccessIter> i
【C++
STL
学习笔记】C++
STL
基础
文章目录C++
STL
是什么,有什么用?学
STL
能干什么?C++
STL
的发展历程是怎样的?C++
STL
版本有哪些?HP
STL
SGI
STL
STL
portPJ
STL
Rouge Wave
STL
熟练使用
STL
标准库是每个C++程序员的必备技能!泛型是什么,C++泛型编程又是什么?C++
STL
基本组成(6大组件+13个头文件)如何衡量一个算法的执行效率?GNU开源精神及其发展历程 C++
STL
是什么,有什么用? 在已有 C++ 尤其是 C++ 模板的基础上,从本节开始,我们开始系统地学习
STL
标准
数据结构与算法
33,010
社区成员
35,327
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章