![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
路漫远吾求索
电子,无线局域网
展开
-
map小结
待整理。。。。http://blog.csdn.net/qw121301152358/article/details/52122043 数组的特点是:寻址容易,插入和删除困难; 而链表的特点是:寻址困难,插入和删除容易。 那么我们能不能综合两者的特性,做出一种寻址容易,插入删除也容易的数据结构?答案是肯定的,这就是我们要提起的哈希表。 Hash就是找到一种数据内容和数据存放地址之间的映射关系原创 2017-02-09 16:44:31 · 294 阅读 · 0 评论 -
单例模式进一步讲解
http://www.cnblogs.com/qiaoconglovelife/p/5851163.htmlhttps://zhidao.baidu.com/question/1894852480537262660.html?qbl=relate_question_0public class Single{ private static final Single s = new Sing转载 2017-05-16 00:14:04 · 399 阅读 · 0 评论 -
已知中序遍历和前序遍历,求后序遍历
已知中序遍历和前序遍历,求后序遍历思路前序遍历:根 左 右 中序遍历:左 根 右 寻找根,然后对于中序遍历,根的左半部分和前序遍历的根后面的左那部分 又重新构成一个相同的子问题,递归求解即可。Code#pragma once#include<iostream>#include<stack>#include<queue>using namespace std;typedef struct原创 2017-04-20 20:49:49 · 871 阅读 · 0 评论 -
图的BFS和DFS之C++实现
图的创建手动输入,并以节点数作为输入结束标志从文件读取,文件的从第二行开始,每一行结束都要有节点数作为结束 图的存储:vector< list<int> > graph;图的BFS非递归实现,借助队列void bfs(int v)//以v开始做广度优先搜索(非递归实现,借助队列){ list<int>::iterator it; visited[v] = true;原创 2017-04-01 10:26:55 · 10420 阅读 · 0 评论 -
二叉搜索树
概念介绍http://www.cnblogs.com/QG-whz/p/4536875.html?utm_source=tuicool&utm_medium=referral(包含C++具体实现,待研究)简单实现和测试#pragma once#include<iostream>using namespace std;struct Node{ int data; Node*Lc原创 2017-03-13 15:50:07 · 396 阅读 · 0 评论 -
字典树的C++实现以及应用
基本概念Trie,字典树,又称单词查找树、前缀树,是一种哈希树的变种。应用于字符串的统计与排序,经常被搜索引擎系统用于文本词频统计。 (后续再补充) 参见:http://www.cnblogs.com/dlutxm/archive/2011/10/26/2225660.html http://blog.csdn.net/pyang1989/article/details/228346531.原创 2017-03-07 16:06:49 · 2676 阅读 · 0 评论 -
链表C++实现
节点定义:typedef struct node { int data; struct node *next;}NODE;类定义class LinkList{private: NODE *head;public: LinkList() { head = NULL; } ~LinkList(); bool clearSqList(); b原创 2017-03-03 01:11:45 · 50743 阅读 · 8 评论 -
八大排序算法
大名鼎鼎——快速排序int quicksort(vector<int> &v, int left, int right){ if(left < right){ int key = v[left]; int low = left; int high = right;原创 2016-12-29 10:56:27 · 626 阅读 · 0 评论 -
vector
vectora; 不能直接用a[0]=1; 直接操作下标是不对的,两张方式: a.resize(100);先指定足够大的空间 然后a[0]=…另一种方式 a.push_back(1)…..substr 方法: 返回一个从指定位置开始,并具有指定长度的子字符串。 参数 start 必选。所需的子字符串的起始位置。字符串中第一个字符的索引为 0。 length原创 2017-02-09 16:57:39 · 274 阅读 · 0 评论 -
C++求解:平面上有n个点,问总共可以组成多少条直线
思路对输入的点,两两组合求取斜率,这样可能会出现某一斜率对应多对点。然后对属于同一斜率的多对点,当成一幅图,求取连通分支个数。这里对对属于同一斜率的多对点,当成一幅图,求取连通分支个数解释一下: 假设对于斜率k=1.0,有点对 (1,1) ,(2,2) (2,2),(3,3) (3,3,),(1,1) (4,3),(3,2) 那么实际上只有两条直线,(1,1),(2,2),(3,3)是连原创 2017-05-28 17:03:25 · 3830 阅读 · 2 评论