刷新
[数据结构] 队列

博主头像 队列的基本概念 队列(Queue),是一种操作受限的线性表,只允许在表的一端进行插入,而在表的另一端进行删除。向队列中插入元素称为入队,删除元素称为出队。其操作特性是先进先出 队列的常见操作: 函数名 功能 InitQueue(*Q) 初始化队列,构造一个空队列Q QueueEmpty(Q) 判断队 ...

[数据结构] 数组与特殊矩阵

博主头像 写在前面 偷懒,先写了数组,队列要画图,所以今天就先不写了 数组的定义 数组是由n个相同类型的数据元素构成的有限序列。每个数据元素被称为一个数组元素,每个元素在n个线性关系中的序号称为该元素的下标,下标的取值范围称为数组的维界。 数组与线性表的关系:数组是线性表的推广。一维数组可视为一个线性表,二维 ...

[数据结构] 栈

博主头像 栈的定义及特点 栈(Stack)是只允许在一端进行插入或删除操作的线性表,如图所示: 栈顶(top):线性表允许进行插入、删除的一端; 栈底(bottom):不允许进行插入和删除的一端; 空栈:不含任何元素的空表。 如上图所示,设某个栈\(S=(a_1, a_2, a_3, a_4, a_5)\), ...

数据结构——数组

博主头像 数组 数据结构的基本类型之一,它可以构成其他数据结构,如栈、队列、哈希表、树、图、堆、矩阵、张量。 数组在内存中的存储方式为一片连续的内存空间,其基本操作与其他数据结构一致,即所谓的增删改查。废话不多说,上代码加以理解。 Java类型实现 class array { public static vo ...

快速排序算法

博主头像 快速排序算法的核心思想是分治法(Divide and Conquer)。 快速排序算法通过以下步骤实现排序: 1. 选择基准值 : 从数列中选择一个元素作为基准值(pivot),通常选择第一个元素。2. 分区操作 : 重新排列数列,使得所有小于基准值的元素都移到基准的前面,而所有大于基准值的元素都移 ...

AtCoder Beginner Contest 339

博主头像 A - TLD (abc339 A) 题目大意 给一个网址,问它的后缀是多少。 解题思路 找到最后的'.'的位置,然后输出后面的字符串即可。 python可以一行。 神奇的代码 print(input().split('.')[-1]) B - Langton's Takahashi (abc339 ...

AES算法:数据传输的安全保障

博主头像 在当今数字化时代,数据安全成为了一个非常重要的问题。随着互联网的普及和信息技术的发展,我们需要一种可靠的加密算法来保护我们的敏感数据。Advanced Encryption Standard(AES)算法应运而生。本文将介绍AES算法的优缺点、解决了什么问题以及在哪些方面可以应用。 AES(Rijn ...

[数据结构] 链表

博主头像 写在前面 菜鸡博主开始复习了,先从数据结构开始吧(其实是每天复习高数太累了) 1. 单链表 单链表是线性表的链式存储,是指通过一组任意的存储单元来存储线性表中的数据元素。对每个链表节点,除了存放元素自身的信息之外,还需要存放一个指向其后继的指针(如下图所示) 单链表的节点可以用如下代码描述: typ ...

Data Encryption Standard算法:历经考验的经典加密方案

博主头像 在当今数字化时代,数据安全是一个至关重要的问题。为了保护敏感数据的机密性和完整性,加密算法成为了数据保护的关键技术。其中,DES(Data Encryption Standard)算法作为一种经典的对称密钥加密算法,具有广泛的应用。本文将对DES算法的优点、缺点以及解决了哪些问题进行详细分析。 DE ...

探究HMAC算法:消息认证与数据完整性的完美结合

博主头像 Hash-based Message Authentication Code(基于哈希的消息认证码,简称HMAC)算法作为一种广泛应用的消息认证码(MAC)算法,在现代信息安全领域起着至关重要的作用。本文将从算法原理、优缺点、实际应用等方面,全面介绍和解释HMAC算法。 HMAC在线加密 | 一个覆 ...

三维动态规划

博主头像 三维动态规划 474. 一和零 多维费用背包 int zeros; int ones; int len; void count(char *s) { zeros = 0; ones = 0; int l = strlen(s); for (int i = 0; i < l; ++i) { if (s ...

MD5算法:高效安全的数据完整性保障

博主头像 摘要:在数字世界中,确保数据完整性和安全性至关重要。消息摘要算法就是一种用于实现这一目标的常用技术。其中,Message Digest Algorithm 5(MD5)算法因其高效性和安全性而受到广泛关注。本文将详细介绍MD5算法的优缺点,以及它如何解决数据完整性问题和安全性问题。此外,我们还将提供 ...

PBKDF2算法:保护密码安全的重要工具

博主头像 摘要:在当今的数字世界中,密码安全是至关重要的。为了保护用户密码免受未经授权的访问和破解,Password-Based Key Derivation Function 2 (PBKDF2)算法成为了一种重要的工具。本文将介绍PBKDF2算法的优缺点,以及它如何解决密码存储和验证中的一些问题。我们还将 ...

二维动态规划(下)

博主头像 二维动态规划(下) 115. 不同的子序列 // 自底向上 int numDistinct(char *s, char *t) { const int MOD = 1e9 + 7; int lenS = strlen(s); int lenT = strlen(t); // dp[i][j]表示在s ...

Rabbit加密算法:保护数据隐私的新选择

博主头像 摘要:数据安全是当今信息时代的关键问题之一。为了保护敏感数据免受未经授权的访问和窃取,加密算法起到了至关重要的作用。本文将介绍Rabbit加密算法的优缺点,以及它如何解决现代加密中的一些问题。本文还将提供一个使用Java编写的完整示例,以帮助读者深入了解Rabbit加密算法的实际应用。 Rabbit ...

二维动态规划(上)

博主头像 二维动态规划 64. 最小路径和 int min(int a, int b) { return a > b ? b : a; } // 从(0,0)到(i,j)的最小路径和,只能向右或向下移动 int recursive(int **grid, int i, int j) { if (i == 0 ...

RC4Drop加密:提升数据保护的新选择

博主头像 摘要:RC4Drop是一种基于RC4算法的加密技术,通过将明文数据分成多个部分并进行加密,实现了对数据的高效保护。本文将对RC4Drop加密技术的优缺点进行详细分析,并给出一个Java完整demo示例。 RC4Drop加密解密 | 一个覆盖广泛主题工具的高效在线平台(amd794.com) http ...

AtCoder Beginner Contest 338

博主头像 A - Capitalized? (abc338 A) 题目大意 给定一个字符串,问是否满足下述条件: 第一个字母大写 其余字母小写 解题思路 逐位判断即可。也可以将字符串变成上述形式,然后判断与原串是否相等。 神奇的代码 #include <bits/stdc++.h> using namespa ...