我们先来看一下for循环的一些简单应用: ls=[1,2,3] for i in ls: print(i) 我们知道这样可以遍历地取出这里面的每一个元素,但是它的工作原理,我们都是模模糊糊的大概知道是那个样子。其实for循环的工作流程是基于迭代器协议的。为明白他的整个工作流程,我们不得不先看一下迭代 ...
分类:
编程语言 时间:
2020-08-25 15:49:35
阅读次数:
51
vector 1.初始化 ① 初始化一个不定长容器 vector<int> a; ② 初始化一个长度为10的容器 vector<int> a(10); ③ 初始化一个长度为10的容器,每个元素赋值为-1 vector<int> a(10, -1); ④ 把a数组复制到vector内 int a[2] ...
分类:
其他好文 时间:
2020-08-18 13:18:03
阅读次数:
59
在C++开发过程中,我们经常会用STL的各种容器,比如vector,map,set等,这些容器极大的方便了我们的开发。在使用这些容器的过程中,我们会大量用到的操作就是插入操作,比如vector的push_back,map的insert,set的insert。这些插入操作会涉及到两次构造,首先是对象的 ...
分类:
其他好文 时间:
2020-08-15 23:58:37
阅读次数:
101
GNU开发工具——GDB快速入门一、GDB简介GDB是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。GDB能够跟踪程序的执行,也能够恢复程序崩溃前的状态。GDB常规功能如下:A、自定义程序的启动方式(指定影响程序运行的参数)B、设置条件断点(在条件满足时暂停程序的运行)C、回溯检查导致程序异常结束的原因(CoreDump)D、动态改变程序的执行
分类:
数据库 时间:
2020-08-05 13:13:53
阅读次数:
89
1、Collection接口 (1)特点 没有直接的实现类,而是提供了子接口 该接口提供了一系列常见的集合操作的方法,例如:增加、删除、查找 (2)常见方法 add:单个添加 addAll:批量添加 remove:删除 removeAll:批量删除 contains:查找 containsAll:批 ...
分类:
其他好文 时间:
2020-08-05 00:06:59
阅读次数:
62
数学使我们能够发现概念和联系这些概念的规律,这些概念和规律给了我们理解自然现象的钥匙。 ——爱因斯坦 前言 本文代码基于C++实现,阅读本文,需要有以下知识 教熟练使用C++ STL库中的vector,map,pair等; 对于递归和简单搜索算法(dfs,bfs)有粗浅的理解; 稍微的离散数学或者是 ...
分类:
其他好文 时间:
2020-08-04 14:04:46
阅读次数:
74
unique unique函数的函数原型如下: 1.只有两个参数,且参数类型都是迭代器: 1 iterator unique(iterator it_1,iterator it_2); 这种类型的unique函数是我们最常用的形式。其中这两个参数表示对容器中[it_1,it_2)范围的元素进行去重( ...
分类:
其他好文 时间:
2020-08-01 21:36:37
阅读次数:
101
一 概念 迭代器是一个对象,它的工作是遍历并选择序列中的对象,它提供了一种访问一个容器对象中的各个元素的方法,而不必暴露容器对象的内部细节。 通过迭代器,开发人员不需要了解容器结构,就可以遍历容器元素。被称为轻量级容器(创建迭代器代价很小) 二 用法 Java中的Iterator功能比较简单,并且只 ...
分类:
编程语言 时间:
2020-08-01 15:47:53
阅读次数:
101
数据结构本身其实不过是数据按照特点关系进行存储或者组织的集合,特殊的结构在不同的应用场景中往往会带来不一样的处理效率。
分类:
其他好文 时间:
2020-07-30 10:55:57
阅读次数:
68
重要设计模式 创建型模式:单例、抽象工厂、原型、建造者、工厂方法 结构型模式:适配器、桥接、装饰、组合、外观、享元、代理 行为型模式:模板方法、命令、访问者、迭代器、观察者、中介者、备忘录、解释器、状态、策略、职责链 工厂模式 工厂顾名思义就是创建产品,根据产品是具体产品还是具体工厂可分为简单工厂模 ...
分类:
编程语言 时间:
2020-07-30 01:41:53
阅读次数:
108