1. 有些问题根本不可能通过计算机解决,不管计算机有多强大或人类程序员有多聪明
2. 不可计算问题
2.1. 20世纪30年代末
2.1.1. 美国人阿隆佐·邱奇
2.1.1.1. Alonzo Church
2.1.1.2. 在计算理论上的突破性工作至今仍是计算机科学许多方面的基础
2.1.1
1. 人类很有可能“在未来像过去所做过的一样行事”
2. 计算机科学领域并不仅仅是编程
2.1. 编程知识是计算机科学家所必需的,但它却只是前提
2.2. 要应用并试验算法,计算机科学研究者就需要将算法转换成计算机程序,而每个程序都由Java、C++或Python等编程语言编写
2.3. 公众对
回溯算法是什么
回溯算法是一种用于求解在某个搜索空间中的问题的算法。它基本思想是从问题的某一种状态开始不断地尝试各种可能的选择,直到找到一种满足问题要求的解或者发现这些选择都无法满足要求时,就回到上一个状态,尝试其他的选择。
回溯算法通常采用递归的方法实现,它会不断地递归调用自身,同时通过参数来模
1. 基本信息
改变未来的九大算法
[美]约翰·麦考密克(John MacCormick )
中信出版集团,2019年2月出版,2版
1.1. 读薄率
书籍总字数213千字,笔记总字数15561字。
读薄率15561÷213000≈7.31%
1.2. 读厚方向
算法之美
算法:第4版
[AGC055A] ABC Identity 题解
题目描述
给定长度为 (3n (1 le n le 2e5)) 的序列,其中字母 A,B,C 各有 (n) 个。
一个合法序列 (T) 满足以下条件:
其长度为 (3k (1 le k le n))。
(T_1 = T_2 = ... =
LGV引理
定义 (A) 是起点集合 ({a_1,a_2,...,a_n}) 。
(B) 是终点集合 ({b_1,b_2,...,b_n})。
定义 (omega(P)) 为路径 (P) 每一条边权值的乘积,即 :
[omega(P) = prod_{e in P}w_e
]定义 (e(a,b))
1.吞吐量,LoRa网关的重要性能
从广义上讲,网关是连接2个不同网络的设备。如果一个设备,它能将LoRa无线网络和Internet连接起来,它就是一个LoRa网关。
目前,大部分的LoRa网关采用SX1301基带芯片,也有部分使用SX1276/8单信道芯片。那么,SX1301芯片的数据吞吐量是S
目录T1 [Daimayuan] 一半相等(C++,数学)输入格式输出格式样例输入样例输出数据规模解题思路T2 [Daimayuan] 兔纸(C++,二分)题目背景题目描述输入格式输出格式样例输入样例输出数据范围附加说明解题思路T3 [Daimayuan] 添加括号(C++,数学)输入格式输出格式
1. 瓶颈
1.1. 在网络带宽有限、存储昂贵的时期
1.2. 移动设备正日益成为人们访问互联网的首选的今天
1.3. 数据压缩成了缓解这些瓶颈的关键
2. 字典转换
2.1. dictionary transforms
2.2. 完全改变了人们对数据压缩的认知
2.2.1. 压缩变成了一种对各
1.相当于加了一些操作的vector<char>
基本操作
字符串转换(C++11)
// 将字符串转换为整型
stoi()
// 将字符串转换为long long
stoll()
// 将字符串转换为float型
stof()
// 将字符串转换为double型
stod()
A - Echo (abc306 a)
题目大意
给定一个字符串,将每个字符输出两次。
解题思路
模拟即可。
神奇的代码#include <bits/stdc++.h>
using namespace std;
using LL = long long;
int main(void)
1. 压缩算法可归为两类
1.1. 统计压缩(即VLC)
1.2. 字典压缩(如LZ78)
1.3. 从不同的角度利用了给定数据流中存在的统计冗余信息
2. 上下文变换
2.1. contextual transform
2.2. 给定一组相邻的符号集,对它们进行某种方式的变换使其更容易压缩
3
A - Power (abc283 a)
题目大意
给定(A,B),输出 (A^B)
解题思路
数不大,暴力即可。
数大了可用快速幂。
神奇的代码#include <bits/stdc++.h>
using namespace std;
using LL = long long;
i
@目录弧形基类定义绘制弧弧形进度条(ProgressBar)添加动画宽度补偿文本弧形滑块(Slider)创建控制柄拖动事件处理项目地址
进度条(ProgressBar)用于展示任务的进度,告知用户当前状态和预期;
滑块(Slider)通过拖动滑块在一个固定区间内进行选择数值范围。
进度条和滑块都是
这篇文章会将FEM全流程走一遍,包括网格、矩阵组装、求解、后处理。内容是大三时的大作业,今天拿出来回顾下。
1. 问题简介
涡轮机叶片需要冷却以提高涡轮的性能和涡轮叶片的寿命。我们现在考虑一个如上图所示的叶片,叶片处在一个高温环境中,中间通有四个冷却孔。
假设为稳态,那么叶片内导热微分方
冒泡排序(Bubble Sort)
算法描述:通过不断地交换相邻两个元素,把最大的元素移到数组的最后面,然后不断缩小排序范围,直到整个数组有序。
算法步骤:
遍历整个待排序的数组。
比较相邻的两个元素。
如果前面的元素比后面的元素大,就交换它们
重复以上步骤,直到整个数组有序。
伪代码:
proc
1. 冒泡排序
遍历数组,每一次循环,两两比较,大的放后面
每次 outerloop 遍历就会让当前没有 sorted 部分找出一个最大元素放到正确的位置上 (被换到那)
严格的 O(N^2) 时间复杂度,两个两个元素进行比较
它的基本思想是反复地交换相邻的未按顺序排列的元素。
代码演示
什么是算法?
算法是一组解决问题的步骤或指令。它包含了输入、输出、处理和控制流程等组成部分,用于处理数据、完成任务和解决问题的过程。算法通常用于计算机程序中,但它也可以用于各种领域的问题和应用中。
算法需要满足以下要求:正确性、可读性、效率、鲁棒性、可维护性等。
算
一 背景
在系统高可用设计中,接口限流是一个非常重要环节,一方面是出于对自身服务器资源的保护,另一方面也是对依赖资源的一种保护措施。比如对于 Web 应用,我限制单机只能处理每秒 1000 次的请求,超过的部分直接返回错误给客户端。虽然这种做法损害了用户的使用体验,但是它是在极端并发下的无奈之举,
在算法竞赛中,写题解是我们不可或缺的一部分。它不仅能够帮助我们整理思路、总结经验,还可以与他人分享我们的解题思路和代码实现。然而,写一篇较完备的题解往往非常繁琐,需要手动复制粘贴题目链接、题号和AC代码,这不仅费时费力,还容易分散我们的注意力,因为我们写题解的核心内容是对题目的理解以及怎么解决这个