加密算法
一、加密算法的基本概念加密算法是一种将明文信息转换为密文信息的方法,以防止未经授权的用户获取原始数据。加密算法在信息安全领域具有重要地位,是保障数据安全与隐私的关键技术。
二、常见的加密算法
对称加密算法
特点:加密和解密过程使用相同的密钥。
优点:加密速度快、加密强度高,适用于大量数据的加密。
缺点:密钥管理困难,需要确保密钥的安全传输和存储。
典型算法:DES(数据加密标准)、AES(高级加密标准)等。其中,AES算法以其更高的安全性和灵活性,已成为目前应用最广泛的对称加密算法之一。
非对称加密算法
特点:加密和解密过程使用不同的密钥,分别为公钥和私钥。
优点:解决了对称加密中密钥管理的问题,具有更高的安全性。
缺点:加密和解密速度相对较慢。
典型算法:RSA(公开密钥密码体制)、ECC(椭圆曲线加密算法)等。RSA算法作为非对称加密的代表,在数字签名、密钥交换等场景中具有广泛应用。
混合加密算法
特点:结合了对称加密算法和非对称加密算法的优点,以实现更高的安全性和效率。
实现方式:通常使用非对称加密算法来加密对称加密算法的密钥,而使用对称加密算法来加密实际的数据。
...
网络协议
TCP/IP(传输控制协议/互联网协议):
TCP:确保数据包的可靠传输,通过确认机制、重传机制和流量控制等机制来保证数据传输的完整性。
IP:负责数据包的路由和寻址,使数据包能够在不同网络之间传输。
HTTP(超文本传输协议):
用于在Web浏览器和服务器之间传输超文本(如HTML文档)。
通常运行在TCP之上,默认端口为80(HTTP)和443(HTTPS)。
HTTPS(安全超文本传输协议):
HTTP的安全版本,通过SSL/TLS加密来确保数据传输的安全性。
常用于敏感信息的传输,如在线支付和登录。
FTP(文件传输协议):
用于在网络上的计算机之间传输文件。
通常运行在TCP端口20(数据)和21(控制)上。
SFTP(安全文件传输协议):
基于SSH的文件传输协议,提供了安全的文件传输功能。
SMTP(简单邮件传输协议):
用于发送电子邮件。
通常运行在TCP端口25上。
POP3(邮局协议第3版):
用于从邮件服务器下载电子邮件到本地计算机。
通常运行在TCP端口110上。
IMAP(互联网邮件访问 ...
排序算法分析
类别
排序方法
时间复杂度(平均情况)
时间复杂度(最坏情况)
空间复杂度(储存空间)
稳定性
插入排序
直接插入排序
O(n^2)
O(n^2)
O(1)
是
Shell排序
O(nlogn)至O(n^2)
O(n^s) 其中s是常数
O(1)
否
选择排序
直接选择排序
O(n^2)
O(n^2)
O(1)
否
堆排序
O(nlogn)
O(nlogn)
O(1) (不包括堆的存储)
否
交换排序
冒泡排序
O(n^2)
O(n^2)
O(1)
是
快速排序
O(nlogn)
O(n^2) (未优化时)
O(logn)至O(n) (递归栈)
否
归并排序
归并排序
O(nlogn)
O(nlogn)
O(n)
是
基数排序
基数排序(LSD)
O(nk) 其中k是数字位数
O(nk) 其中k是数字位数
O(n+k)
是
直接插入排序(Straight Insertion Sort)直接插入排序是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通 ...
设计模式
设计模式的分类总体来说设计模式分为三大类:
创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
创建模式(5种)工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
工厂模式简单工厂模式定义:定义了一个创建对象的类,由这个类来封装实例化对象的行为。
举例:(我们举一个pizza工厂的例子)
pizza工厂一共生产三种类型的pizza:chesse,pepper,greak。通过工厂类(SimplePizzaFactory)实例化这三种类型的对象。类图如下:
工厂类的代码:
12345678910111213public class SimplePizzaFactory { public Pizza CreatePizza(String ordertype) { ...
The sentence may resonate you
人类最宝贵的东西是什么? 我认为是爱和勇气。我喜欢阅读,喜欢思考,从中我总能发现那些最让我珍视的那些心灵力量。
科幻与爱的一篇小说相比于人类的勇气,机器人的爱实在太微不足道,但相比勇气或许我们更缺少爱,
机器人不哭如果你答应我一个请求,我愿意跟着您走你想要什么,山米?我……我想哭我吩咐维修机器,载入医学数据库中有关眼泪、泪腺的内容,然后关掉山米,开始拆卸改造。两个小时之后,山米有了排泪管,还给他提供了溶液,每只眼睛里可以流出六百滴眼泪。这种事你听说过吗,机器人想哭?三十年时间,徒劳地试图成为一个普通人。或者五百年时间徒劳的想哭出来————我不知道哪种情形更凄惨,我不由得心里冒火:一般情况下我甚至不会替人难过,更别说机器了。但和人类无比宏大的野心相比,他的要求是多么简单、多么渺小啊。我们想跨过大海,于是跨过了。我们想飞,于是飞起来了。我们想奔向群星,于是我们来到了星际。可山米相应的一切,只是为他死去的艾米丽小姐痛苦一场。他等待了五百年,同意再一次出售自己,为的只是几滴泪水。这个交易真是太不值了改造好了?好了,哭吧,山米…尽管把你的眼珠子哭出来好了。我…我……我哭不出来。我感受到痛苦,但我 ...
数据结构基础
引言在数据结构的学习中,我们需要一定的基础和思维,在这里做一定的总结,并分享一下自己的经验
数组数组的操作在数据结构中最为常见,也最需要理解和记忆
构建一个数组1234# 一维数组a = [0]*n # 二维数组b = [[0]*n for _ in range(n)]
12345678910111213a = [1,2,3]n = len(a)ans = []# 正序for i in range(n): for j in range(1,n-i+1): ans.append(a[i:i+j])# 倒序for i in range (n,0,-1): for j in range (n-i+1): ans.append(a[i-1:i+j])return ans
全排列1234567891011121314151617def permute(nums): def backtrack(first=0): # 所有数都填完了 if first == n: output. ...
数据_arbe
Table 5. Single-modal experimental results(3D@0.5 0.25 0.25)
Baseline
Data
Car
Pedestrain
Cyclist
3D@0.5
3D@0.25
3D@0.25
Easy
Mod.
Hard
Easy
Mod.
Hard
Easy
Mod.
Hard
RDIou
Arbe
51.49
26.74
17.83
0.00
0.00
0.00
0.51
0.37
0.35
...
数据
Table 5. Single-modal experimental results(3D@0.5 0.25 0.25)
Baseline
Data
Car
Pedestrain
Cyclist
3D@0.5
3D@0.25
3D@0.25
Easy
Mod.
Hard
Easy
Mod.
Hard
Easy
Mod.
Hard
RDIou
LiDAR
63.43
40.80
32.92
33.71
29.35
28.96
38.26
35.62
35.02
...
LangGPT结构化提示词编写实践
作业基础任务 (完成此任务即完成闯关)
背景问题:近期相关研究发现,LLM在对比浮点数字时表现不佳,经验证,internlm2-chat-1.8b (internlm2-chat-7b)也存在这一问题,例如认为13.8<13.11。
任务要求:利用LangGPT优化提示词,使LLM输出正确结果。完成一次并提交截图即可
123456789101112131415161718# Role: 浮点数比较 ## Profile - author: LangGPT - version: 1.0 - language: 中文 - description: 本提示词旨在帮助AI准确比较两个浮点数的大小,并输出明确的判断结果。 ## Skills 1. 精确解析浮点数。 2. 按照数学规则进行大小比较。## 提示词 请比较以下两个浮点数的大小,并给出明确的判断结果: 第一个数是:{用户输入的第一个浮点数} 第二个数是:{用户输入的第二个浮点数} 预期输出:“{第一个数} 大于 {第二 ...
XTuner微调个人小助手认知
作业基础任务
使用 XTuner 微调 InternLM2-Chat-1.8B 实现自己的小助手认知,如下图所示(图中的伍鲜同志需替换成自己的昵称),记录复现过程并截图。
进阶任务
将自我认知的模型上传到 OpenXLab,并将应用部署到 OpenXLab下面内容为书生浦语的相关教程,你也可以直接访问 InternLM
XTuner微调个人小助手认知
在本节中,将一步步带领大家体验如何使用 XTuner 完成个人小助手的微调!
整个过程大概需要90分钟我们就可以得到一个自己的小助手。
先看看微调效果:
微调前微调后
输入请介绍一下你自己请介绍一下你自己
输出
详细闯关任务请访问闯关任务,提交作业助教老师批改后将获得 100 算力点奖励!!!
1 微调前置基础本节主要重点是带领大家实现个人小助手微调,如果想了解微调相关的基本概念,可以访问XTuner微调前置基础。
2 准备工作环境安装:我们想要用简单易上手的微调工具包 XTuner 来对模型进行微调的话,第一步是安装 XTuner !安装基础的工具是一切的前提,只有安装了 XTuner 我们才能够去执行 ...