-
【数据结构】图的遍历方法 深度优先遍历和广度优先遍历
所属栏目:[安全] 日期:2021-03-31 热度:73
接着上次的文章“图的构建(邻接链表法)”,邻接链表法构建图相对来说比较简单,并且遍历起来也相对简单,但是要是动态添加图的节点和图的边,则是实在不方便,不过现在不管那么多,今天的主题是遍历。? -? 有另外一种图的构建方法,叫做十字链表法,插入删[详细]
-
【数据结构】 两个栈实现一个队列【面试】
所属栏目:[安全] 日期:2021-03-31 热度:118
栈结构:先进后出,后进先出,只允许在栈尾操作。 队列:先进先出,在队尾入队,在队头出队。 要想用两个栈实现一个队列,就需要使用一个相当于中间量的结构进行队列的入队和出队操作。 用图形象化为: 这样问题就从图中得出了思路: 入队操作:把入队元素一[详细]
-
【数据结构】红黑树
所属栏目:[安全] 日期:2021-03-30 热度:71
? ? ? ? ?红黑树是一种二叉平衡树,在每一个结点增加了一个存储位表示结点的颜色,以维持它的平衡; 红黑树性质 (1)红黑树结点有如下域:color,key,left,right,p;我们把这些NIL结点是为指向外结点的指针,可以自己定义; (2)每一个结点不是红的就是[详细]
-
【数据结构】散列表
所属栏目:[安全] 日期:2021-03-30 热度:157
? ? ??散列表是典型的以空间换取时间的数据结构;它在插入、删除、查找操作上也具有常数平均时间的表现,但是 这种表现是以统计为基础的 ; 基本知识 (1) 负载系数, 指元素的个数除以表格大小, 除非采用开链法(拉链法),否则负载系数应该在0~1之间;[详细]
-
【数据结构】队列
所属栏目:[安全] 日期:2021-03-30 热度:143
队列结构定义common.h #ifndef __HI_COMM_H__#define __HI_COMM_H__#include stdlib.h#include stdio.h#include malloc.h#include string#define LIST_INIT_SIZE 100 /*线性表存储空间的初始分配量;*/#define LIST_INCREMENT 10 /*线性表存储空间的分配增量[详细]
-
【数据结构】链表
所属栏目:[安全] 日期:2021-03-30 热度:141
链表是数据结构课程的第一讲,也是最为简单的数据结构。其基本结构是一个包含有值和另一个节点地址或索引的对象。逐个对象因为上一级(前驱)的索引而一一相连,形成了一个链状的线性结构。链表可以灵活地增加或者减少节点的个数,当时需要增加时,临时向系[详细]
-
【数据结构】基本概念
所属栏目:[安全] 日期:2021-03-30 热度:197
作者:郭孝星 微博:郭孝星的新浪微博 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells Github:https://github.com/AllenWells 一 基本概念和术语 数据结构 数据结构:数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们[详细]
-
《数据结构》——排序
所属栏目:[安全] 日期:2021-03-30 热度:68
??? 一、 概述 ?? ??? 排序(Sorting)是数据处理中一种很重要的算法。一般情况下,排序操作在数据处理过程中要花费许多时间,为了提高计算机的运行效率,人们提出不断改进的排序算法,这些算法也从不同种角度展示了算法设计的某些重要原则。谈到了计算的效[详细]
-
【数据结构】堆
所属栏目:[安全] 日期:2021-03-30 热度:145
堆 这种数据结构。一般堆用来实现优先级队列。 优先级队列:和通常的栈和队列一样,只不过里面的每个元素都有一个“优先级”,在处理的时候,首先处理优先级最高的。通常包含三个操作getMax/delMax/insert 栈和队列算是优先级队列的特例。 使用其他数据结构[详细]
-
【数据结构】二叉树
所属栏目:[安全] 日期:2021-03-30 热度:125
前言 数据结构还是大二的时候学过的,当然由于是非计算机专业的学生,所以学的也不怎么样,去年用c++实现了最基本的数据结构,链表/栈/队列/二叉树,三月份看的时候还贴到了博客上。然而当时由于代码量不够,其实写的并不是很好,理解也太不到位。 最近在看[详细]
-
【数据结构】冒泡排序
所属栏目:[安全] 日期:2021-03-30 热度:106
对于一个int数组,请编写一个冒泡排序算法,对数组元素排序。 给定一个int数组A及数组的大小n,请返回排序后的数组。 测试样例: [1,2,3,5,3],6 [1,5] class BubbleSort {public: void swap( int * a, int * b){ int temp = *a ; *a = *b ; *b = temp; } voi[详细]
-
【数据结构】快速排序
所属栏目:[安全] 日期:2021-03-30 热度:198
对于一个int数组,请编写一个归并排序算法,对数组元素排序。 给定一个int数组A及数组的大小n,请返回排序后的数组。 测试样例: [1,2,3,5,3],6 [1,5] 思路: 1, 选取第一个为哨兵,不要随机选取 2, 在交换的时候一定要注意偏移量,left一定要加上,不然通[详细]
-
linux下编译boost.python简单方法
所属栏目:[安全] 日期:2021-03-19 热度:109
最近项目使用c++操作 Python 脚本,选用boost.python库。在window下编译安装很顺利,但是在Linux下一直编译不通过,总是提示找不到头文件。linux版本为rhel5.7。后来询问同事,原来是同事将原来系统自带的python2.4删除掉了,然后手动编译安装了python3.3。[详细]
-
Linux下的tar压缩解压缩命令详解(小结)
所属栏目:[安全] 日期:2021-03-19 热度:175
tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。 -z:有gzip[详细]
-
Linux shell脚本输出日志笔记整理(必看篇)
所属栏目:[安全] 日期:2021-03-19 热度:133
1、日志方法简介: #日志名称log="./upgrade.log" #操作日志存放路径 fsize=2000000 #如果日志大小超过上限,则保存旧日志,重新生成日志文件 exec 2$log #如果执行过程中有错误信息均输出到日志文件中 #日志函数#参数 #参数一,级别,INFO,WARN,ERROR #参数[详细]
-
linux修改tomcat默认访问项目的具体步骤(必看篇)
所属栏目:[安全] 日期:2021-03-19 热度:95
tomcat服务器的默认访问路径是webapps目录下的ROOT。如果更改tomcat服务器下的默认访问工程,需要修改tomcat/conf/server.xml配置文件。 打开server.xml可以找到类似下面的配置: Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="tr[详细]
-
Linux终端命令行的常用快捷键详解
所属栏目:[安全] 日期:2021-03-19 热度:90
history 显示命令历史列表 ↑(Ctrl+p) 显示上一条命令 ↓(Ctrl+n) 显示下一条命令 !num 执行命令历史列表的第num条命令 !! 执行上一条命令 !string 执行含有string字符串的最新命令 Ctrl+r 然后输入若干字符,开始向上搜索包含该字符的命令,继续按Ctrl+r,[详细]
-
linux下命令行操作快捷键及技巧(分享)
所属栏目:[安全] 日期:2021-03-19 热度:129
历史相关命令 !!:执行上一条命令 !num:执行历史命令中第num条命令 !-num:执行历史命令中倒数第num条命令 !string:执行最近一条包含有string字符串的命令 Ctrl+r:搜索上一条匹配的命令 !$:代表上一个命令的最后一个字符串 Esc+.:显示上一个命令的最后[详细]
-
浅谈linux中shell变量$#,$@,$0,$1,$2的含义解释
所属栏目:[安全] 日期:2021-03-19 热度:66
摘抄自:ABS_GUIDE 下载地址:http://www.tldp.org/LDP/abs/abs-guide.pdf linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $ 最后运行的命令的结束代码(返回值) $- 使用Set命[详细]
-
完美解决ntp的错误问题no server suitable for synchronization
所属栏目:[安全] 日期:2021-03-19 热度:130
当用ntpdate -d来查询时会发现导致 no server suitable for synchronization found 的错误的信息有以下2个: 错误1.Server dropped: Strata too high 在ntp客户端运行ntpdate serverIP,出现no server suitable for synchronization found的错误。 在ntp客户[详细]
-
real server 的一个启动脚本例子(推荐)
所属栏目:[安全] 日期:2021-03-19 热度:161
real server 的vip 启动脚本 #!/bin/bash#chkconfig: 2345 50 50#description: real server init scriptVIP=192.168.80.80case $1 in"start") echo "starting real server ..." ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up echo "1"/proc[详细]
-
CentOS 6.0 启动时出现fstab错误时的修复方法
所属栏目:[安全] 日期:2021-03-19 热度:125
CentOS启动时,出现了fstab 中 /dev/loop1 设备的读取失败,结果,呵呵,系统进入了recovery 模式,输入root密码之后,想修改fstab,结果发现不行,后来找了半天, 发现可以使用: #mount -o remount,rw / 之后,fstab就可以修改了。 以上这篇CentOS 6.0 启动[详细]
-
输出执行操作和打印日志的shell脚本实例
所属栏目:[安全] 日期:2021-03-18 热度:80
cat /mnt/log_function.sh #!/bin/bash #log function####log_correct函数打印正确的输出到日志文件 function log_correct () { DATE=`date “+%Y-%m-%d %H:%M:%S”` ####显示打印日志的时间 USER=$(whoami) ####那个用户在操作 echo “${DATE} ${USER} exec[详细]
-
Linux 分区初始化为物理卷,把物理卷加入卷组的方法
所属栏目:[安全] 日期:2021-03-18 热度:81
用到的命令有 1、pvcreate (physical volume create) 2、vgcreate (volume group create) 例子1:创建物理卷 pvcreate /dev/sdb1 -- /dev/sdb1 是一个分区! 如果在初始化的时候出错了,可能是因为分区的分区类型不正确,区的类型要求是8e(linux lvm) ------[详细]
-
shell脚本实现分日志级别输出的方法
所属栏目:[安全] 日期:2021-03-18 热度:63
shell脚本如何优雅的记录日志信息,下面让我们一步一步,让shell脚本的日志也变得高端起来,实现如下功能 ①设定日志级别,实现可以输出不同级别的日志信息,方便调试 ②日志格式类似为:[日志级别] 时间 funcname:函数名 [lineno:行号] 日志信息 ③不同级别[详细]
