刷新
说说你对选择排序的理解?如何实现?应用场景?

博主头像 一、是什么 选择排序(Selection sort)是一种简单直观的排序算法,无论什么数据进去都是 O(n²)的时间复杂度,所以用到它的时候,数据规模越小越好 其基本思想是:首先在未排序的数列中找到最小(or最大)元素,然后将其存放到数列的起始位置 然后再从剩余未排序的元素中继续寻找最小(or最大) ...

主席树的简要讲解

博主头像 区间第k小值 主席树是解决动态查找序列上[l,r]区间中的第k小值的一个数据结构 核心思想:动态开点(后面会讲)传统线段树都是值域线段树其实意思就是每个节点都存的是序列上[l,r]的一个区间和,但是考虑我们需要动态处理区间的不是最值,故换一种线段树 主席树一般用的是权值线段树就是把[l,r]改为[m ...

AtCoder Beginner Contest 350

博主头像 A - Past ABCs (abc350 A) 题目大意 给定一个形如 ABCXXX的字符串。 问XXX是否是\(001 \to 349\)之间,且不能是 \(316\)。 解题思路 将后三位转换成数字后判断即可。 神奇的代码 a = int(input().strip()[3:]) if a > ...

深入了解PBKDF2:密码学中的关键推导函数

博主头像 title: 深入了解PBKDF2:密码学中的关键推导函数 date: 2024/4/20 20:37:35 updated: 2024/4/20 20:37:35 tags: 密码学 对称加密 哈希函数 KDF PBKDF2 安全 密钥派生 第一章:密码学基础 对称加密和哈希函数 对称加密:对称加 ...

说说常见的排序算法有哪些?区别?

博主头像 一、是什么 排序是程序开发中非常常见的操作,对一组任意的数据元素经过排序操作后,就可以把他们变成一组一定规则排序的有序序列 排序算法属于算法中的一种,而且是覆盖范围极小的一种,彻底掌握排序算法对程序开发是有很大的帮助的 对与排序算法的好坏衡量,主要是从时间复杂度、空间复杂度、稳定性 时间复杂度、空间 ...

Rabbit加密算法:性能与安全的完美结合

博主头像 title: Rabbit加密算法:性能与安全的完美结合 date: 2024/4/19 19:51:30 updated: 2024/4/19 19:51:30 tags: Rabbit加密 对称加密 流密码 密钥调度 安全分析 实际应用 加密算法 第一章:引言 1. 加密算法的基本概念和应用 加 ...

说说你对图的理解?相关操作有哪些?

博主头像 一、是什么 在计算机科学中,图是一种抽象的数据类型,在图中的数据元素通常称为结点,V是所有顶点的集合,E是所有边的集合 如果两个顶点v,w,只能由v向w,而不能由w向v,那么我们就把这种情况叫做一个从 v 到 w 的有向边。v也被称做初始点,w也被称为终点。这种图就被称做有向图 如果v和w是没有顺序 ...

说说你对堆的理解?如何实现?应用场景?

博主头像 一、是什么 堆(Heap)是计算机科学中一类特殊的数据结构的统称 堆通常是一个可以被看做一棵完全二叉树的数组对象,如下图: 总是满足下列性质: 堆中某个结点的值总是不大于或不小于其父结点的值 堆总是一棵完全二叉树 堆又可以分成最大堆和最小堆: 最大堆:每个根结点,都有根结点的值大于两个孩子结点的值 ...

深入解析Rivest Cipher 4:理论与实践

博主头像 title: 深入解析Rivest Cipher 4:理论与实践 date: 2024/4/17 20:30:58 updated: 2024/4/17 20:30:58 tags: - 密码学 - RC4算法 - 流密码 - 密钥调度 - 安全分析 - 优缺点 - 应用实践 第一章:引言 密码学简 ...

说说你对树的理解?相关的操作有哪些?

博主头像 一、是什么 在计算机领域,树形数据结构是一类重要的非线性数据结构,可以表示数据之间一对多的关系。以树与二叉树最为常用,直观看来,树是以分支关系定义的层次结构 二叉树满足以下两个条件: 本身是有序树 树中包含的各个结点的不能超过 2,即只能是 0、1 或者 2 如下图,左侧的为二叉树,而右侧的因为头结 ...

说说你对集合的理解?常见的操作有哪些?

博主头像 一、是什么 集合(Set),指具有某种特定性质的事物的总体,里面的每一项内容称作元素 在数学中,我们经常会遇到集合的概念: 有限集合:例如一个班集所有的同学构成的集合 无限集合:例如全体自然数集合 在计算机中集合道理也基本一致,具有三大特性: 确定性:于一个给定的集合,集合中的元素是确定的。即一个元 ...

123···31>