0

Billboard HDU - 2795(树状数组,单点修改,区间查询)

题目链接:https://vjudge.net/problem/HDU-2795 思路:h = 1e9行不通,因为广告是1*w的,所以n个广告最多只需要 h = n的高度,那么h=2e5就可以接受了。 用树状数组维护区间最大值。 从前往后区间查询哪一大块块首先满足条件,然后一直缩小区间,直到区间长度 ...

SummerMingg 发布于 2020-03-19 19:08 评论(0)阅读(13)
0

数据结构&算法

在分析算法效率时,经常关注以下两种复杂度: (1)最坏情况复杂度:Tworst(n) (2)平均复杂度:Tavg(n) 易知Tavg(n)<=Tworst(n) 注:一般分析最坏情况复杂度,因为平均复杂度不容易找 下表能够比较直观的看出各个复杂度的运行时间 1 2 4 8 16 32 C(常函数) ...

顶级脱发猿 发布于 2020-03-19 15:57 评论(0)阅读(14)
1

算法与数据结构(1):基础部分——以插入排序为例

本文以插入排序为例,介绍算法与数据结构的基础部分。包括正确性分析,运行效率分析,并为下一篇文章介绍时间复杂度等概念做铺垫。 ...

Albert_Shen 发布于 2020-03-19 14:51 评论(0)阅读(20)
0

汉诺塔问题实验--一个简洁的JAVA程序

思路: 这里使用递归法 n==1的时候,直接把它从x移到z位置即可。 如果是n层,我们首先把上面的n- 1层移到y位置,然后把最 下面的那个最大的盘子,移到z位置,然后把y上面放的上面n-1层移到z位置即即可, 我们在移动上面n-1层盘子的时候。先把上面n-2层移到z位置,然后把第n- 1层那个最大 ...

心拍数#0822 发布于 2020-03-19 12:13 评论(0)阅读(10)
0

哈希表和碰撞算法

线性探测法 哈希表结构体 计算哈希算法,这里采用最常用的求余数法 插入元素,线性探测法 就是如果发生碰撞,就一直往前寻找空位子,所以P这个参数会影响碰撞的次数 删除元素 可执行的完整代码 c++ include include using namespace std; define MAX 10 d ...

Biningo 发布于 2020-03-19 10:09 评论(0)阅读(16)
0

《Mathematical Analysis of Algorithms》中有关“就地排列”(In Situ Permutation)的算法分析

问题描述 把数列$(x_1,x_2,\cdots,x_n)$变换顺序为$(x_{p(1)},x_{p(2)},\cdots,x_{p(n)})$,其中$p$是$A=\{1,2,3,\cdots,n\}$的一个排列,要求只使用$O(1)$的额外空间。例如,当数列为$(10,20,30,40)$,$p$ ...

Allegro_VivAce 发布于 2020-03-18 22:19 评论(2)阅读(24)
0

《Mathematical Analysis of Algorithms》中有关“选择第t大的数”的算法分析

开头废话 这个问题是Donald.E.Knuth在他发表的论文Mathematical Analysis of Algorithms中提到的,这里对他的算法分析过程给出了更详细的解释。 问题描述: 给定一个数组a[1,2,...,n],用尽量少的比较次数找出数组中第t大的数。(假定这n个数两两不同) ...

Allegro_VivAce 发布于 2020-03-18 21:18 评论(0)阅读(7)
0

线性表 王炸篇 上

一、线性表的定义 1.1 定义 • n个(n ≥ 0)具有相同特性的数据元素的有限序列,L =(a1, a2, … ai 1,ai,ai+1,… an),n是线性表的长度 1.2 特点 • 表中元素个数有限 • 表中元素具有顺序性 • 表中元素数据类型相同 • 表中元素具有抽象性 二、线性表的顺序表 ...

界内嘻哈 发布于 2020-03-18 18:44 评论(0)阅读(33)
0

通过CGAL将一个多边形剖分成Delaunay三角网

简述了通过CGAL将一个多边形剖分成Delaunay三角网的过程,并且给出了具体的实现代码。 ...

charlee44 发布于 2020-03-17 22:13 评论(0)阅读(99)
0

跳表

跳表因为其结构简单,对于一些高效的数据结构 红黑树 、 B树 等来说相对简单且容易实现。在应用方面也很广泛,比如著名的中间件 Redis 里面的 Zset 就用到了跳表来实现高效查询和排序 下面直接上代码 定义结构体 forward[MaxLevel] 是一个Node指针类型,用于当前节点指向的下一 ...

Biningo 发布于 2020-03-17 20:02 评论(0)阅读(34)
0

指针实现 Treap

前置知识:二叉排序树,堆。 应用场景:平衡树。 〇、导入 1. 二叉排序树 我们都知道,二叉排序树就是满足“$lchsize; if(ch[1]) size+=ch[1] size; } 现在 实现如下: 下面实现操作的函数均为 的成员函数。 附:调试函数,输出当前树的详细信息: 2 1 旋转 旋转 ...

Createsj 发布于 2020-03-17 19:31 评论(0)阅读(14)
0

数据结构系统学习(1)数据类型和数据结构的概念

[TOC] 在现代计算机系统中,计算机更多地用于控制,管理及数据处理等非数值计算的处理工作,而不像之前只需要处理数值型数据。这个时候,数据的类型变为了由字符,表格和图像格式等组合而成的具有一定结构的数据。 而用程序处理如何处理这些数据已经变得越来越重要了,由此产生了一个叫做数据结构的学科。下面就一起 ...

一只帅气的IT小昂 发布于 2020-03-17 17:57 评论(0)阅读(18)
1

【算法】莫队算法粗略讲解

**莫队是由莫涛大佬研究出的一种非常优秀的离线算法**,主要用来解决区间问题,甚至可以在非强制在线的情况下离线处理包括修改的操作。本文主要讲解普通莫队算法。 先来看一道例子,给出下面的一个序列,给出一个区间,求区间和: ...

ctjcalc 发布于 2020-03-16 22:52 评论(1)阅读(31)
0

1. 两数之和

题目: 给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值 的那两个整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用 这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nu ...

raykindle 发布于 2020-03-16 22:49 评论(0)阅读(29)
0

NTP网络时钟系统技术参数与详细介绍

NTP网络时钟系统技术参数与详细介绍是由高精度GPS(北斗)网络母钟、高品质,高稳定性系统网络子钟、智能化控制设备及其它配套设备组成的计时和时钟显示系统,其作用是为保证校园或医院网络提供标准统一的时间服务. ...

GPS北斗卫星同步时钟 发布于 2020-03-16 18:10 评论(0)阅读(25)
0

数据结构(一)—链表

[TOC] 一、背景 作为机械狗转行,数据结构当然是不可缺少的,疫情假期里闲来在家无事,刚好接下给小孩教数据结构的活,所以自学了简单的数据结构用法,算是数据结构的入门吧。做个笔记记下来,其实平常喜欢用思维导图进行记录,这算复习一遍,所以再用MarkDown进行记录,顺便发个博。 话不多说,今天先来记 ...

煦阳 发布于 2020-03-15 18:02 评论(0)阅读(76)
0

判断括号是否有效(c++描述)

开门见山,假设我们有一大串的由'{', '}', '[', ']', '(', ')' 这些括号构成比如像这样的"{[}][()"符号串,我们肉眼当然能看出它是非法的,那么如何使用代码来判断是否合法呢? 其实我们可以借助栈来判断这些符号串是否非法 : 1.首先我们我需要建立符号的一对一映射,如下所示 ...

maoqifan 发布于 2020-03-15 16:10 评论(0)阅读(50)
0

搜索树【链式+数组】

数组 数组表示二叉树: root left:root 2+1 right:root 2+2 比如 0号节点的左孩子是1 右孩子是2 1号节点的左孩子是3 右孩子是4 2号节点的左孩子是5 右孩子是6 1、定义结构体 2、找树的最小值和最大值的节点位置 3、插入节点 4、判断节点是否存在 5、中序遍历 ...

Biningo 发布于 2020-03-15 10:42 评论(0)阅读(26)
0

数据结构与算法(Python版):时间复杂度和大O表示法

一.时间复杂度 首先我们来看一个问题·: 题目:如果a+b+c=1000,且a^2+b^2=c^2(a,b,c为自然数),如何求出a,b,c所有可能的组合? 看到这个题目我们的第一反应则是直接套用三个循环使用枚举法直接得到答案,程序如下: import time start_time = time. ...

Geeksongs 发布于 2020-03-15 09:58 评论(0)阅读(30)
0

排序算法

常用排序算法的理解及示例代码:冒泡排序、插入排序、选择排序、归并排序、快速排序、二叉树排序 ...

pgjett 发布于 2020-03-14 16:29 评论(0)阅读(23)