在所有后量子密码体制中,格是研究最活跃和最灵活的。它们具有很强的安全性,能够进行密钥交换、数字签名,以及构造出像全同态加密这样复杂的算法。尽管格密码体制的优化和安全性都需要非常复杂的数学证明,但基本思想只需要基本的线性代数。假设你有一个如下线性方程组: 求解x是一个经典的线性代数问题,可以用高斯消元 ...
分类:
其他好文 时间:
2020-03-30 20:06:02
阅读次数:
573
基本思想: 解法1: 抓住一个关键点:只可以从阵营1到阵营2; 如果是1阵营,则可以到达1或者2阵营; 如果是2阵营,则只可以到达2阵营; 所以在此基础上,进行迪杰斯特拉的优化问题; 解法2: 看一位大佬所给出思想,之前自己想删边,结果失败了。 由于只能从1阵营到2阵营,所以只需要删除从2阵营到1阵 ...
分类:
其他好文 时间:
2020-03-30 14:39:55
阅读次数:
83
1 函数式编程简介 函数式编程是和传统命令式编程区分的一种编程思想,“在函数式编程语言中,函数是第一类的对象,也就是说,函数 不依赖于任何其他的对象而可以独立存在,而在面向对象的语言中,函数 ( 方法 ) 是依附于对象的,属于对象的一部分。这一点决定了函数在函数式语言中的一些特别的性质,比如作为传出 ...
分类:
编程语言 时间:
2020-03-30 09:37:39
阅读次数:
73
引入 引用某OI大佬的一段话 动态规划自古以来是DALAO凌虐萌新的分水岭,但有些OIer认为并没有这么重要——会打暴力,大不了记忆化。但是其实,动态规划学得好不好,可以彰显出一个OIer的基本素养——能否富有逻辑地思考一些问题,以及更重要的——能否将数学、算筹学(决策学)、数据结构合并成一个整体并 ...
分类:
其他好文 时间:
2020-03-29 12:45:52
阅读次数:
97
基本思想: 迪杰斯特拉得翻版,循环求各个节点,最后求最小结果; 关键点: 注意题目要求; #include<iostream> #include<vector> #include<string> #include<algorithm> using namespace std; const int m ...
分类:
其他好文 时间:
2020-03-26 19:59:10
阅读次数:
72
动态规划(DP)不是某种具体算法,而是一种思想。 核心在于:把大问题转化为小问题,利用小问题的解推断出大问题的解。 大事化小,小事化了 的思想 一、基本思想 小例子: 上楼梯 今有 n 级台阶。初始时站在 0 级,每次可以向上走 1 级或 2 级。问方案总数? 递推关系:走到 f [ n ] ,要么 ...
分类:
其他好文 时间:
2020-03-25 21:26:11
阅读次数:
77
继承 的基本思想是,可以基于已有的类创建新的类。继承已存在的类就是复用(继承)这些类的方法,而且可以增加一些新的方法和字段,使新类能够适应新的情况。 反射 是指在程序运行期间更多地了解类及其属性的能力。 5.1 类、超类和子类 1. 中,使用关键字 表示继承。 2. 这个已存在的类称为超类 、基类 ...
分类:
其他好文 时间:
2020-03-25 00:55:13
阅读次数:
71
基于MYT算法从正则表达式构造NFA 基本思想 : 性质 : 对于加括号的正则式(s),使用N(s)本身作为它的NFA 一、构造识别ε和字母表中一个符号的NFA 1.特点 仅一个接受状态,它没有向外的转换 2.示例 二、构造识别主算符为选择正则式的NFA 1.特点 仅一个接受状态,它没有向外的转换 ...
分类:
其他好文 时间:
2020-03-24 11:05:40
阅读次数:
235
一、什么是二分查找 二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列 二、算法复杂度 二分查找的基本思想是将n个元素分成大致相等的两部分,取a[n/2]与x做比较,如果x=a[n/2],则找到x ...
分类:
其他好文 时间:
2020-03-24 00:50:07
阅读次数:
74
本文首先简要阐述哈夫曼算法的基本思想,然后介绍了使用哈夫曼算法进行文件压缩和解压缩的 处理步骤,最后给出了C语言实现的文件压缩和解压缩的源代码。 哈夫曼算法的主要思想是: ①首先遍历要处理的字符串,得到每个字符的出现的次数; ②将每个字符(以其出现次数为权值)分别构造为二叉树(注意此时的二叉树只有一 ...
分类:
编程语言 时间:
2020-03-21 12:53:41
阅读次数:
59