-
【数据结构】冒泡排序
所属栏目:[安全] 日期:2021-03-30 热度:184
对于一个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 热度:80
对于一个int数组,请编写一个归并排序算法,对数组元素排序。 给定一个int数组A及数组的大小n,请返回排序后的数组。 测试样例: [1,2,3,5,3],6 [1,5] 思路: 1, 选取第一个为哨兵,不要随机选取 2, 在交换的时候一定要注意偏移量,left一定要加上,不然通[详细]
-
【数据结构】 两个栈实现一个队列【面试】
所属栏目:[安全] 日期:2021-03-30 热度:157
栈结构:先进后出,后进先出,只允许在栈尾操作。 队列:先进先出,在队尾入队,在队头出队。 要想用两个栈实现一个队列,就需要使用一个相当于中间量的结构进行队列的入队和出队操作。 用图形象化为: 这样问题就从图中得出了思路: 入队操作:把入队元素一[详细]
-
【数据结构】 第一章 绪论
所属栏目:[安全] 日期:2021-03-30 热度:116
§1.1 什么是数据结构 数据结构是介于数学 计算机软件和计算机硬件三者之间的一门核心课程。 §1.2 基本概念和术语 数据结构通常有下列4种基本结构 ①集合 ②线性结构 ③树形结构 ④图状结构(网状结构) 数据结构是一个二元组: Data Structure = (D,S) D表[详细]
-
【数据结构】第二章 线性表
所属栏目:[安全] 日期:2021-03-30 热度:105
§2.1线性表的定义 §2.2线性表的顺序表示和实现 优点: 随机 存储 §2.3线性表的链式表示和实现 ?链式表示优点:灵活 ? ? 缺点:不随机存储 ?2.3.1线性链表:储存单元可以是连续的 也可以是不连续的。 ?对于数据元素ai来说,除了存储其本身的信息之外,还需[详细]
-
【数据结构】顺序栈
所属栏目:[安全] 日期:2021-03-30 热度:114
#include STDIO.H#include STRING.H#include STDLIB.Htypedef struct SeqStack{int length;int top;char *data;}seqstack;seqstack* CreatStack(seqstack *s,int n){s=(seqstack *)malloc(sizeof(seqstack)+n*sizeof(char));if(s==NULL) return NULL;memset([详细]
-
【数据结构】单链表
所属栏目:[安全] 日期:2021-03-30 热度:114
#include stdio.h#include stdlib.h#include STRING.Htypedef struct LinkNode{int date; //数据域struct LinkNode * next;}linkNode;typedef struct Linklist{int length; linkNode *head;}linklist;linklist *Creatlist(){linklist *list;list=(linklist *[详细]
-
【数据结构】图的遍历方法 深度优先遍历和广度优先遍历
所属栏目:[安全] 日期:2021-03-30 热度:79
接着上次的文章“图的构建(邻接链表法)”,邻接链表法构建图相对来说比较简单,并且遍历起来也相对简单,但是要是动态添加图的节点和图的边,则是实在不方便,不过现在不管那么多,今天的主题是遍历。? -? 有另外一种图的构建方法,叫做十字链表法,插入删[详细]
-
【数据结构】红黑树
所属栏目:[安全] 日期:2021-03-30 热度:152
? ? ? ? ?红黑树是一种二叉平衡树,在每一个结点增加了一个存储位表示结点的颜色,以维持它的平衡; 红黑树性质 (1)红黑树结点有如下域:color,key,left,right,p;我们把这些NIL结点是为指向外结点的指针,可以自己定义; (2)每一个结点不是红的就是[详细]
-
【数据结构】散列表
所属栏目:[安全] 日期:2021-03-30 热度:195
? ? ??散列表是典型的以空间换取时间的数据结构;它在插入、删除、查找操作上也具有常数平均时间的表现,但是 这种表现是以统计为基础的 ; 基本知识 (1) 负载系数, 指元素的个数除以表格大小, 除非采用开链法(拉链法),否则负载系数应该在0~1之间;[详细]
-
数据结构:数组、链表、栈、队列的理解
所属栏目:[安全] 日期:2021-03-21 热度:194
解释定义 数据结构: 数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。再简单描述一下:数据结构就是描述对象间逻辑关系的学科。 如果还是不太清楚下面会举例说明的。 数据存储结构: 简单的讲就是数据在计算机中的存储方式。 常用的数据存储[详细]
-
linux csf 防火墙 防止少量的ddos cc攻击很有效
所属栏目:[安全] 日期:2021-03-20 热度:120
上篇博客说到,httpd请求数过多,apache连接数不够,加大连接数的做法,在受ddos,cc攻击的情况下,最终的结果就是系统资源耗尽,导致死机。 测试服务器,也没有想到会受到攻击,什么防范措施也没有做。装了csf的防火墙,在应对少量ddos,cc攻击的,还是挺管用[详细]
-
Linux服务器的初步配置流程
所属栏目:[安全] 日期:2021-03-20 热度:103
开发网站的时候,常常需要自己配置Linux服务器。 本文记录配置Linux服务器的初步流程,也就是系统安装完成后,下一步要做的事情。这主要是我自己的总结和备忘,如果有遗漏,欢迎大家补充。 下面的操作针对Debian/Ubuntu系统,其他Linux系统也类似,就是部分[详细]
-
简单的HTTP服务器 http-server
所属栏目:[安全] 日期:2021-03-20 热度:108
因为web worker的需要启动服务器,所以急需一个本地服务器,一年前安装的XAMPP也打不开了。况且,只是运行个前端的页面,用个简单的服务器就行了。 http-server 是一个简单的零配置命令行HTTP服务器,基于 nodeJs。 http-server 安装 npminstallhttp-server-[详细]
-
csf 针对某一ip 开放 单个 多个端口
所属栏目:[安全] 日期:2021-03-20 热度:78
csf是一个其于iptables的防火墙,在/etc/csf.conf中可以开放端口,但是在这里开放的端口,是所有IP都可以访问的。如果想针对某一ip开放某一端口,或者多个端口怎么办呢。 修改/etc/csf.allow文件,添加以下内容 1,开放单个端口 tcp|in|d=3306|s=192.168.10.10[详细]
-
使用nethogs查看进程使用的网络情况
所属栏目:[安全] 日期:2021-03-20 热度:64
NetHogs是一个开源的命令行工具(类似于Linux的top命令),用来按进程或程序实时统计网络带宽使用率。 安装nethogs 本篇文章主要讲解centeos和ubuntu如何安装nethogs #centeos安装yuminstallnethogs#ubuntu安装sudoapt-getinstallnethogs 使用nethogs 在基于[详细]
-
csf ip 端口 映射
所属栏目:[安全] 日期:2021-03-20 热度:176
csf基于iptables的,不支持SNAT外,其他映射是支持的。最新版不知道,有没有解决这个问题。配置文件/etc/csf.allow 1,DNAT 用法:IPx|*|IPy|*|tcp/udp //IPX映射IPYIPx|portA|IPy|portB|tcp/udp //IPX 端口portA 映射到ipY 端口portB例子:192.168.254.62|*[详细]
-
iptables snat和dnat
所属栏目:[安全] 日期:2021-03-20 热度:152
iptables中的snat和dnat是非常有用的,感觉他们二个比较特别,所以单独拿出来说一下. dnat是用来做目的网络地址转换的,就是重写包的目的IP地址。如果一个包被匹配了,那么和它属于同一个流的所有的包都会被自动转换,然后就可以被路由到正确的主机或网络。比[详细]
-
关于HTTPS的七个误解
所属栏目:[安全] 日期:2021-03-20 热度:115
本文详细讨论了关于HTTPS的七个误解,误解内容包括HTTPS无法缓存、SSL证书很贵、HTTPS太慢等等,以下是原文,希望你可以更透彻地了解HTTPS。 误解七:HTTPS无法缓存 许多人以为,出于安全考虑,浏览器不会在本地保存HTTPS缓存。实际上,只要在HTTP头中使用特[详细]
-
4个常用的HTTP安全头部
所属栏目:[安全] 日期:2021-03-20 热度:107
它曾是世界性图书馆梦的开始,现在它是全球知识的聚集地,它是目前最流行的,人们将应用都部署之上的万维网。 它是敏捷的代表,它不是单一的实体,它由客户端和服务端组成,它的功能在不断地强大,它还有标准。 虽然越来越多的解决方案非常适用于发现什么可[详细]
-
关于启用HTTPS的一些经验分享
所属栏目:[安全] 日期:2021-03-20 热度:77
随着国内网络环境的持续恶化,各种篡改和劫持层出不穷,越来越多的网站选择了全站 HTTPS。就在今天,免费提供证书服务的 Lets Encrypt 项目也正式开放,HTTPS 很快就会成为 WEB 必选项。HTTPS 通过 TLS 层和证书机制提供了内容加密、身份认证和数据完整性三[详细]
-
算法—选择排序
所属栏目:[安全] 日期:2021-03-19 热度:159
选择排序 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元[详细]
-
算法—希尔排序
所属栏目:[安全] 日期:2021-03-19 热度:149
希尔排序 希尔排序,也称递减增量排序算法,是插入排序的一种更高效的改进版本。希尔排序是非稳定排序算法。 希尔排序是基于插入排序的以下两点性质而提出改进方法的: 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到线性排序的效率 但插入排[详细]
-
算法—冒泡排序
所属栏目:[安全] 日期:2021-03-19 热度:79
冒泡排序 冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序(如从大到[详细]
-
算法—插入排序
所属栏目:[安全] 日期:2021-03-19 热度:129
插入排序 插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序(即只需用到 {displaystyle O(1)} {di[详细]
