SQL
基础知识&术语
RDBMS关系数据库管理系统(Relational Database Management System)术语:
* **数据库**:关联表的集合
* **数据表**:数据的矩阵
* **行**(=元组、记录):一组相关的数据
* **列**(=数据元素):包含相同类型的数据
* **冗余**:存储两倍数据,会降低性能但提高数据安全性
* **主键**:唯一,一个数据表仅能包含一个主键
* **外键**:用于关联两个表
* **复合键**(=组合键):将多个列作为一个索引键,用于复合索引
* **索引**:类似书籍目录,索引是对数据库表中一列或多列的值进行排序的一种结构;利用索引快速访问数据库表中的特定信息
* **参照完整性**:要求关系中不允许引用不存在的实体;参照完整性与实体完整性是关系模型必须满足的完整性约束条件,目的是保持数据一致性
注:键的值在当前列中具有唯一性
语法
插入:INSERT INTO
123INSERT INTO [table_name] (field1, field2,...)VALUES(value1, value2,...) ...
动态规划
动态规划即利用历史记录来避免重复计算。思想是将原问题分解为若干子问题,即最优子结构,通过求解子问题完成对最终问题的求解;重复出现的子问题在第一次出现时对其求解,保存其结果作为历史记录从而在求解后续子问题时直接利用,完成对问题的化简。一般解决问题有三个步骤:
1. 定义一个数组保存历史记录,并确定数组所代表的含义;
2. 确定动态转移方程,即归纳或确定出如何利用历史数据推出新的元素值,确定数组元素之间的关系式;
3. 找到初值,归纳需要初值,历史数据也需要最根的初始值推出新值。
1. 最大子序和面对该问题,最暴力的解决方式是:时间复杂度$O(n^2)$,两层循环头尾遍历所有子序列。这样其实中间会有很多部分被重复计算累和,例如:
下标
0
1
2
3
4
5
值
-5
-3
6
4
1
-2
0~3之间的连续子数列有:0,1,2,3,(0,1),(1,2),(2,3),(0,1,2)…
(0,1,2)显然需要重复计算(0,1),也就是说其实可以直接给(0,1,2)直接提供(0,1)的运算结果或者历史记录,而不用重复这个计算过程。
如果希望进一步优化有一个时间复杂 ...
小程序开发
1.软件运作模式前端(客户端):网站页面、小程序、APP
后端(服务器端):
操作系统
代码
数据库
处理数据
存储数据
用户由前端访问并进行用户行为,用户行为产生网络请求,服务器接收到请求,代码根据请求的内容调用数据库的接口读取数据,得到数据库返回的原始数据,代码再进一步加工数据,得到客户端能够接收的数据格式并返回给客户端,用户得到用户行为的反馈。
由此,客户端主要功能是展示数据;服务端主要功能是接收请求、处理数据、操作数据库和存储数据;用户行为关联起了前后端。
1234567891011graph LR A(用户需求)-->B-->C C-->D1-->D2-->F C-->E1-->E2-->F B(需求文档) C(前端界面实现) D1(UI设计) D2(前端界面实现) E1(数据库设计) E2(后端接口实现) F(前端后端打通)
区块链
区块链BTC比特币被称为加密货币[crypto-currency]
区块链是区块组成的链表,在区块链上的内容都是公开的,包括区块的地址,转账的金额,所以实际“加密货币”是不加密的。
密码学应用比特币主要用到了密码学中的两个功能:哈希&签名
哈希函数[cryptographic hash function]密码学中用到的哈希函数被称为:cryptographic hash function;
它有两个性质:
无法人为制造哈希碰撞[collision resistance]:哈希碰撞指,x≠y H(x)=H(y) ,即x和y两个不同的输入,经过哈希函数得到的输出H(x)和H(y)却是相等的,这就称为哈希碰撞。它是不可避免的,因为输入空间远远大于输出空间(哈希函数输出空间固定)。给出x,很难人为地找到能和x哈希碰撞的y,除非蛮力求解[brute-force]。
该性质的作用:对一个message求digest,从而验证massage是否被篡改。比如message取m,m的哈希值是H(m)=digest 如果有人想篡改m值而H(m)不变,则无法做到。
哈希碰撞无法人为制造,无法验证, ...
record
post front matter
语法
必选
含义
title
✓
文章标题
date
✓
文章创建日期
updated
文章更新日期
tags
文章标签
categories
文章分类
keywords
文章关键字
description
文章描述
top_img
文章顶部图片
cover
文章缩略图
comment
文章评论模块
primary 待定更新test