-
【数据结构】排序算法(二)之交换排序之快速排序(QuickSort)
所属栏目:[安全] 日期:2021-05-21 热度:164
? ? ? 上一次学习了【【数据结构】排序算法(一)之直接插入排序,冒泡排序】今天重新学习了一下快速排序 ? ? 快速排序是是属于交换排序的范畴,另外一种的交换排序的代表是冒泡排序(上面有冒泡排序的链接地址) 快排的基本思路其实还是挺简单的:我们从需[详细]
-
【数据结构】二叉树、AVL树
所属栏目:[安全] 日期:2021-05-21 热度:177
副标题#e# 08年9月入学,12年7月毕业,结束了我在软件学院愉快丰富的大学生活。此系列是对四年专业课程学习的回顾,索引参见:http://www.voidcn.com/article/p-srsfcefa-vo.html ? 二叉树 二叉树是每个结点最多有两个子树的有序树。通常子树的根被称作“左[详细]
-
【数据结构】选择排序
所属栏目:[安全] 日期:2021-05-21 热度:135
#include stdio.h//#include string.hvoid swap(int *a,int* b){int tmp;tmp = *a;*a = *b;*b = tmp;}//void BubbleSort(int *p,int n)//{//int i,j;//for(i=0; in ;i++)//{//for( j=n-1; j = i; j--)//{//if(p[j]p[j-1])//swap(p[j],p[j-1]);//}//}/[详细]
-
【数据结构】直接插入排序
所属栏目:[安全] 日期:2021-05-21 热度:77
#include stdio.h//#include string.hvoid InsertSort(int a[],int n){int i,j,t;for( i=1 ;in; i++){t = a[i];j = i-1;while( j=0 ta[j]){a[j+1] = a[j];j--;}a[j+1] = t;}}int main(){int i ;int num[9]={9,1,5,8,3,7,4,6,2};//BubbleSort(num,9);Insert[详细]
-
【数据结构】希尔排序
所属栏目:[安全] 日期:2021-05-21 热度:116
希尔排序的原理参见,维基百科,http://zh.wikipedia.org/wiki/希尔排序,这里给出源代码。 #includestdio.hvoid ShellSort(int a[],int n){int i,j,k,temp,gap;int gaps[]={1,5,13,43,113,297,815,1989,4711,11969,27901,84801,213331,543749,1355339,350[详细]
-
【数据结构】堆排序
所属栏目:[安全] 日期:2021-05-21 热度:50
参考一篇文章: http://www.cnblogs.com/dolphin0520/archive/2011/10/06/2199741.html 另外,在下面的链接下还有动画演示: http://sjjp.tjuci.edu.cn/sjjg/DataStructure/DS/web/flashhtml/duipaixu.htm ? 下面是源代码: /*堆排序(大顶堆) 2011.9.14*/#[详细]
-
【数据结构】归并排序
所属栏目:[安全] 日期:2021-05-21 热度:179
归并排序(Merge sort,台湾译作:合并排序)是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。(维基百科) 参考文章: http://www.voidcn.com/article/p-ccwctxoe-yt.html 下面是具体代码: #in[详细]
-
成本监控和完善
所属栏目:[安全] 日期:2021-05-06 热度:63
option that runs independently from your cloud environment itself. 控制云成本非常困难,因为公共云计费模型很复杂,并且你可以轻松地在公共云中启动工作负载然后忘记关闭它们,这通常导致你为不需要的资源付费。大多数公共云都提供基本的成本监控工具([详细]
-
值得深思的开源云平台与工具
所属栏目:[安全] 日期:2021-05-06 热度:131
开源云平台 如果企业更希望在开放源代码基础上构建其云计算,而不是使用专有的公共云服务,则可以使用多种开放源代码平台。 AppScale AppScale使用Eucalyptus提供核心AWS云服务(例如Amazon S3和EC2)的开源部署。 AppScale使IT团队可以在其基础架构上运行这些[详细]
-
公布物联网产品的企业未必关注安全
所属栏目:[安全] 日期:2021-05-06 热度:190
企业的关注点可能落在制造汽车、电子消费品或家用电器上,未必总能意识到自己理应多投入点时间和金钱在这些产品及其集成移动应用的代码开发与管理方面。 计算发展演进到今天就是这样。不从事软件开发业务的公司如今也在开发应用和API来驱动自身核心业务了。[详细]
-
仅购置新产品并不能保护企业安全
所属栏目:[安全] 日期:2021-05-06 热度:69
企业往往会觉得只要购买了最新、最热门的安全工具就能保障安全了,但事实并非如此。 优秀人才的招募和保留颇不容易,所以企业购买的新工具相当程度上管理得并不恰当,管理员经常错误配置了这些工具。安全团队需要扪心自问:我们真的用的是最新版本吗?我们确[详细]
-
基本安全意识得大力加强
所属栏目:[安全] 日期:2021-05-06 热度:140
安全意识培训的重点往往围绕勒索软件攻击、网络钓鱼和社会工程攻击,因为这些技术是攻击者常会利用的。 企业往往过于自信此类意识培训能够实际改变员工行为的程度了。太多企业采用的是照单划勾的方法,往往每年通过第三方搞个一两次培训,确保员工都参加了这[详细]
-
传统补丁与漏洞管理工具不能保护API
所属栏目:[安全] 日期:2021-05-06 热度:176
尽管补丁和漏洞管理程序能够帮助安全团队应对现成软件和组件的安全风险,但应用和API安全策略需要的不止这些。 可惜,因为急于避免沦为99%的已知漏洞的受害者,企业将大量精力放在了补丁和漏洞管理上。已发布软件或硬件中定义明确的漏洞往往通过通用漏洞与暴[详细]
-
WAF和网关不能全面保护API
所属栏目:[安全] 日期:2021-05-06 热度:76
API是当今现代应用的基础,但只有少数企业真正认识到API的重要性或其呈现的风险水平。API对攻击者的吸引力太大了,以致于承担了与自身体量很不相称的风险,但太多企业假定Web应用防火墙(WAF)和API网关能够充分保护自身API。实际上,这些技术由于固有的设计局[详细]
-
【数据结构】哈希表
所属栏目:[安全] 日期:2021-04-04 热度:64
副标题#e# 哈希表(散列表),是通过关键字key而直接访问在内存存储位置的一种数据结构,它就是 以空间换取时间。通过多开辟几个空间,来实现查找的高效率。 对于哈希表,我们并不是很陌生:在c语言学习阶段,给定一个字符串,查找第一个只出现过一次的字符[详细]
-
【数据结构】线段树(Segment Tree)
所属栏目:[安全] 日期:2021-04-03 热度:135
副标题#e# ? 假设我们现在拿到了一个非常大的数组,对于这个数组里面的数字要反复不断地做两个操作。 1、(query)随机在这个数组中选一个区间,求出这个区间所有数的和。 2、(update)不断地随机修改这个数组中的某一个值。 时间复杂度: 枚举: 枚举L~R[详细]
-
【数据结构】2.java源码关于LinkedList
所属栏目:[安全] 日期:2021-04-03 热度:60
副标题#e# 关于LinkedList的源码关注点 1.从底层数据结构,扩容策略 2.LinkedList的增删改查 3.特殊处理重点关注 4.遍历的速度,随机访问和iterator访问效率对比 ? 1.从底层数据结构,扩容策略 构造函数不做任何操作,只要再add的时候进行数据初始化操作,[详细]
-
【数据结构】【状态压缩】刷题
所属栏目:[安全] 日期:2021-04-03 热度:59
没什么别的,就希望自己记住那些函数 1floyd+bitset优化 #includecstdio#includecstdlib #includebitset using namespace std;int n;const int N=2003;char s[N];bitset N bs[N]; int main(){ scanf("%d",n); for(int i=1;i=n;i++) { scanf("%s",s+1); for[详细]
-
【数据结构】Hash表
所属栏目:[安全] 日期:2021-04-03 热度:118
副标题#e# 【数据结构】Hash表 Hash表也叫散列表,是一种线性数据结构。在一般情况下,可以用o(1)的时间复杂度进行数据的增删改查。在Java开发语言中,HashMap的底层就是一个散列表。 1. 什么是Hash表 Hash表是一种线性数据结构,这种数据结构的底层一般是[详细]
-
自己动手实现java数据结构(五)哈希表
所属栏目:[安全] 日期:2021-04-03 热度:200
副标题#e# 1.哈希表介绍 前面我们已经介绍了许多类型的数据结构。在想要查询容器内特定元素时,有序向量使得我们能使用二分查找法进行精确的查询((O(logN)对数复杂度,很高效)。 可人类总是不知满足,依然在寻求一种更高效的特定元素查询的数据结构,哈希表[详细]
-
自己动手实现java数据结构(七) AVL树
所属栏目:[安全] 日期:2021-04-03 热度:108
副标题#e# 1.AVL树介绍 前面我们已经介绍了二叉搜索树。普通的二叉搜索树在插入、删除数据时可能使得全树的数据分布不平衡,退化,导致二叉搜索树最关键的查询效率急剧降低。这也引出了平衡二叉搜索树的概念,平衡二叉搜索树在此前的基础上,通过一系列的等[详细]
-
自己动手实现java数据结构(八) 优先级队列
所属栏目:[安全] 日期:2021-04-03 热度:64
副标题#e# 1.优先级队列介绍 1.1 优先级队列 有时在调度任务时,我们会想要先处理优先级更高的任务。例如,对于同一个柜台,在决定队列中下一个服务的用户时,总是倾向于优先服务VIP用户,而让普通用户等待,即使普通的用户是先加入队列的。 优先级队列和普[详细]
-
自己动手实现java数据结构(六)二叉搜索树
所属栏目:[安全] 日期:2021-04-03 热度:149
副标题#e# 1.二叉搜索树介绍 前面我们已经介绍过了向量和链表。有序向量可以以二分查找的方式高效的查找特定元素,而缺点是插入删除的效率较低(需要整体移动内部元素);链表的优点在于插入,删除元素时效率较高,但由于不支持随机访问,特定元素的查找效率[详细]
-
自己动手实现java数据结构(一) 向量
所属栏目:[安全] 日期:2021-04-03 热度:64
副标题#e# 1.向量介绍 计算机程序主要运行在内存中,而内存在逻辑上可以被看做是连续的地址。为了充分利用这一特性,在主流的编程语言中都存在一种底层的被称为数组(Array)的数据结构与之对应。在使用数组时需要事先声明固定的大小以便程序在运行时为其开辟[详细]
-
自己动手实现java数据结构(四)双端队列
所属栏目:[安全] 日期:2021-04-03 热度:189
副标题#e# 1.双端队列介绍 在介绍双端队列之前,我们需要先介绍队列的概念。和栈相对应,在许多算法设计中,需要一种"先进先出(First Input First Output)"的数据结构,因而一种被称为"队列(Queue)"的数据结构被抽象了出来(因为现实中的队列,就是先进先出的[详细]

浙公网安备 33038102330468号