- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 反转链表
法一:迭代法法二:递归法#include<iostream>using namespace std;struct node{ node* next; int number;};node* reverseList1(node* head)//思路是改变链表的指针方向,由向后变为向前{ if (head == NULL || head->next == NULL) { return...
2018-04-08 18:16:15
159
原创 插入、选择、冒泡、快排、shell、merge排序(可运行)
其中几种排序方法给出了优化。#include#includeusing namespace std;void insert(int A[100]) //插入排序 { for (int i = 0; i { for (int j = i; j >0; j--) { if (A[j]
2017-10-23 21:43:34
292
原创 图的储存方式之邻接链表
邻接表邻接表是一种顺序存储与链接存储相结合的存储方式。对于图中的每个顶点,将所有邻接于该顶点的顶点链成一个表,称为该顶点的表边(有向图称为出边表)。为了方便对所有边表头指针进行存取操作,可以采取顺序存储。存储边表头指针的数组和存储顶点信息的数组构成了邻接表的表头数组,称为顶点表。C++:struct ArcNode{ intadjvex; A
2017-07-12 16:13:04
1149
转载 C++优先级
C++ Operator Precedence 转自: http://en.cppreference.com/w/cpp/language/operator_precedence The following table lists the precedence(优先) andassociativity(结合性) of C++ operators. Operators
2017-07-12 09:53:40
451
原创 图的储存方式之邻接矩阵
图的存储结构之邻接矩阵图是一种复杂的数据结构,表现在不仅各个顶点的度可以相差很多,而且顶点的逻辑关系也错综复杂。从图的定义可知,一个图包含两方面的信息:顶点的信息以及描述顶点之间关系的信息。 邻接矩阵:也称为数组表示法,其方法是用一个一维数组存储顶点信息,用二维数组存储边的信息,这个二维数组称为邻接矩阵。 Arc[i][j]=1, i
2017-07-12 09:10:38
714
原创 图遍历
图遍历简介图的遍历是图中最基本的操作。图的遍历是指从图中的某一个顶点出发,对图中的所有顶点访问一次且只有一次。那么,自然而然的就会有下列几个问题:1. 从何开始?2. 从某个顶点出发可能到达不了所有的顶点,例如非连通图,如何才可以访问所有顶点?3. 图中可能存在回路,产生重复访问问题4. 一个顶点可能和多个顶点相连,如何选择访问下一个节点
2017-07-09 00:23:50
749
原创 图 概述
图(graph) 概述 在许多的计算机应用中,图这类简化模型被经常应用,人们自然而然地产生了一系列的疑问。例如:从这个节点到那个节点可以走多少条路?两个节点之间最近的路径是哪一条? 定义:图是由顶点的有穷非空集合和顶点之间边的集合组成。图的边分为有向边和无向边。如果图的任意两个顶点之间的边为无向边,则图为无向图。否则为有向图。 基本术语:
2017-07-07 19:22:04
322
原创 最小生成树
最小生成树 树的性质:1. 用一条边连接任意两个新的顶点都会产生一个新的环2. 从树中删掉一条边会得到两棵新的树切分定理:由上述两条性质可以得到切分定理:(切分是将图中的顶点分为两个不同的集合,然后比较其横切边的权值)(横切边是一条连接两个顶点的不同的边) 在一幅加权图中,给定任意的切分,它的横切边中最小者一定属于最小生成树。(证明:
2017-06-27 11:08:06
329
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人