make_heap 用法

对make_heap(), pop_heap(), push_heap()的用法做个总结: make_heap()生成堆,他有两个参数,也可以有三个参数,前两个参数是指向开...

2018-09-05 15:10:55

阅读数 120

评论数 0

C++ regex

匹配字符串的基本规则 1. 匹配固定的字符串 regex e("abc"); 2. 匹配固定字符串,不...

2018-08-31 18:59:27

阅读数 245

评论数 0

啊哈算法(8)——更多精彩的算法

1、图的最小生成树(Kruskal算法) 对于一个给定的图,找出其最小生成树,用最少的边让n个顶点的图连通,很显然若要让n个顶点的图连通,最少要n-1条边,最小生成树还需要满足这n-1条边的权重和最小。例如对于如下输入实例: 6 9 2 4 11 3 5 13 4 6 3 5 6 4 2 ...

2018-08-27 21:09:54

阅读数 277

评论数 0

啊哈算法(7)——神奇的树

1、堆(完全二叉堆) 建堆的方法:(自上而下的向上调整)每一次插入一个新节点,并且对其进行向上调整,实现如下: /*建立最小堆,方法一*/ #include<iostream> using namespace std; int h[101]...

2018-08-26 14:27:42

阅读数 101

评论数 0

啊哈算法(6)——最短路径

最短路径 问题:对于一个给定的的图求出任意两点之间的最短路径? 可以通过DFS或者BFS求出两个点之间的最短的路径,在本节介绍其他的算法来求出两个点之间的最短路径。 1、Floyd-Warshall(不能解决带负权环路的图) 思想:若要让两个顶点之间的距离变小,只有通过一个顶点中转,甚至可...

2018-08-25 20:57:30

阅读数 125

评论数 0

啊哈算法(5)——图的遍历

图的深度优先遍历和广度优先遍历 1、深度优先遍历 #include<iostream> using namespace std; int e[101][101];//使用邻接矩阵来存储一个图 int book[101]; int sum, ...

2018-08-24 15:35:36

阅读数 252

评论数 0

啊哈算法(4)—万能的搜索

深度优先搜索DFS 深度优先搜索的关键在于解决“当下该如何做”。至于下一步怎么做与当下该如何做是一样的。深度优先搜索的基本模型: void dfs(int step) { 判断边界 尝试每一种可能for(i=1;i<=n;++i) ...

2018-08-24 11:23:41

阅读数 416

评论数 0

排序算法总结

冒泡排序 时间复杂度为O(n2),最好情况下为O(n),空间复杂度为O(1)。稳定的 冒泡排序总结: void swap(int &a,int &b) { int temp=a; a=b; b=temp; } void buble_so...

2018-08-02 14:08:35

阅读数 33

评论数 0

进程控制(3)

在进程控制(1)和进程控制(2)中介绍了进程控制的几个基本操作函数,fork、exec系列、exit、wait和waitpid等。在这篇文章中将要介绍与进程相关的ID知识以及进程会计和进程调度。 与进程相关的ID有以下几个: 1、实际用户ID 标识进程的执行者。可以看做是我们登录的ID...

2018-07-16 14:04:08

阅读数 47

评论数 0

进程控制(2)

在进程控制(1)中,介绍了创建子进程fork和vfork函数,其实在创建一个进程之后,子进程往往会调用一个exec函数去执行另一个程序。当调用一个exec函数之后,该进程执行的程序完全替换为新程序,而新程序从main函数开始执行。exec函数并不创建新的进程,前后进程ID不变,只是用磁盘上的一个新...

2018-07-13 16:26:24

阅读数 45

评论数 0

进程控制(1)

进程控制 在介绍了进程环境之后,这篇文章将进一步介绍进程的控制,包括创建新进程、执行程序和进程终止。 进程标识符 每个进程都有一个非负整型表示的唯一进程 ID,称为进程标识符。虽然进程ID是唯一的,但是进程 ID 可以被复用,当一个进程终止时,其进程 ID 就可以用于另一个新的进程。通过采用...

2018-07-12 21:05:06

阅读数 43

评论数 0

进程环境

进程环境

2018-07-11 20:56:19

阅读数 110

评论数 0

TCP/IP_TCP与UDP

TCP/IP_TCP与UDP TCP/IP中两个具有代表性的传输层协议,他们分别是TCP和UDP。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。 在IP首部中有一个协议字段,用来标识网络层的上一层所采用的是哪一种传输层协议。根据这个字段的协议号,就可以识别IP...

2018-07-06 16:33:49

阅读数 532

评论数 0

TCP/IP_IP协议辅助协议

TCP/IP_IP协议辅助 IP让最终目标主机收到数据包,但是这一过程中仅仅有IP是无法实现通信的,必须还有能够解析主机名称和MAC地址的功能,以及数据包在发送过程中异常处理的功能。此外,还会涉及IP必不可少的其他功能。这篇文章将介绍相关的辅助协议。 DNS TCP/IP网络中要求每一个互连...

2018-07-06 11:25:35

阅读数 198

评论数 0

TCP/IP_IP协议

TCP/IP_IP协议 网络层主要是由IP和ICMP两个协议组成,在这篇文章主要说明IP协议。网络层的主要作用是“实现终端节点之间的通信”。也可以叫做“点对点通信”。数据链路层的主要作用是互联同一种数据链路的节点之间进行包传递。而一旦跨越多种数据链路,就要借助网络层。网络层可以跨越不同的数据链路...

2018-07-05 15:41:36

阅读数 139

评论数 0

TCP/IP_数据链路层

TCP/IP_数据链路层 本篇文章介绍网络的基本内容数据链路层,通过介绍TCP/IP具体的数据链路以太网、无线局域网、PPP等来说明。 数据链路相关技术 MAC地址 MAC地址用于识别数据链路中互连的节点。 共享介质型网络 共享介质型网络指由多个设备共享一个通信介质的一种网络。在这...

2018-07-04 19:41:47

阅读数 149

评论数 0

字符串的排列与组合

字符串的全排列 题目:输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 分析:对于这个问题可以把字符串分成两个部分,一部分是字符串的第一个字符,另一部分是剩余部分。即就...

2018-07-04 15:13:08

阅读数 122

评论数 0

TCP/IP_网络基础知识

TCP/IP_网络基础知识

2018-07-03 20:40:01

阅读数 287

评论数 0

链表问题_删除排序链表中的重复节点

题目:在一个排序链表中删除其中重复的节点,重复的一个不留。 分析:若我们定义的函数无返回值则应该讲函数的参数定义成**phead,因为头结点也可能被删除,具体的实现如下: struct ListNode { int val; struct ListNode...

2018-07-03 11:25:23

阅读数 136

评论数 0

链表问题_链表中环的入口节点

题目:一个链表中包含环路,求链表的入口节点。 分析:根据求链表中倒数第K个节点的方法,这个问题可以分为两个步骤:1、判断链表中的节点个数记为K,对于这个可以采用一快一慢两个指针,当两个指针相遇时,则相遇的节点就在环中,然后根据此节点就可以求出环的大小。2、由于已经知道环的个数,就可以使用类似于求...

2018-07-03 09:34:45

阅读数 92

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭