电化学

一、原电池与电解池1、原电池与电解池的异同对于原电池,反应的$\Delta G<0$;对于一些电解池内的反应,可以理解为通电强行让它发生反应,反应的$\Delta G>0$。原电池在物理中相当于是内电路,电解池在物理中相当于是外电路,两者在化学本质上相似,所以本文以原电池为例来解释电动势。2、高中内容补充电镀(银)的总反应方程式:$$\mathrm{Ag}(阳极)\rightarrow\mathrm{Ag}(阴极)$$二、原电池1、原电池的电动势电化学的化学变化过程中有电功。根据电学知识,电功(非体积功)$W_f$等于电量$q$与电动势$E$…
化学热力学基础

一、引言针对一个化学反应的两个实际问题:给定的原料能否生成期望的产物?——可能性是否可能把原料全部转变成产物?——转化率针对所有化学反应的两个理论问题:如何判断化学反应是否能发生?——方向判据如何预测化学反应的最大限度?——平衡原理化学热力学就是从能量热和功(力)入手,来研究上述化学反应的方向及限度的普遍规律。本文将会利用物理的热学理论来阐明化学问题,从理论上证明各项结论。二、体系(系统)与环境开放(Open)体系:既有微粒交换,又有能量交换。封闭(Closed)体系:没有微粒交换,但有能量交换。孤立(Isolated)体系:既无微粒交换,又无能量交换。…
指针与自由存储空间

[card title="声明" color="info"]文章内容来自于《C++ Primer Plus》,本文重新组织语言,选取书本部分内容重新组合。[/card]一、使用new来分配内存前面我们都将指针初始化为变量的地址;变量是在编译时分配的有名称的内存,而指针只是为可以通过名称直接访问的内存提供 了一个别名。指针真正的用武之地在于,在运行阶段分配未命名的内存以存储值。在这种情况下,只能通过指针来访问内存。在C语言中,可以用库函数malloc( )来分配内存;在 C++中仍然可以这样做,但C++ 还有更好的方法——new运算符。下面来试试这种新技术…
指针

[card title="声明" color="info"]文章内容来自于《C++ Primer Plus》,本文重新组织语言,选取书本部分内容重新组合。[/card]一、什么是指针指针是一个变量,其存储的是值的地址,而不是值本身。在讨论指针之前,我们先看一看如何找到常规变量的地址。只需对变量应用地址运算符(&),就可以获得它的位置,例如,如果home是一个变量,则&home是它的地址。#include<iostream> using namespace std; int main(){ int home=1; double …
C/C++的读入与输出

[card title="注意" color="info"]无特殊说明,本文中的读入数据来自键盘,输出到屏幕。[/card]一、printf()用法(格式输入函数)printf()函数主要用于输出,它可以将格式化的数据输出到屏幕上,让我们能够清晰地看到程序运行的结果。printf()是在标准库的头文件stdio.h定义的,使用这个函数之前,必须在源码文件头部引入这个头文件(#include<stdio.h>)printf()不会在尾行自动添加换行符,运行结束后,光标就停留在输出结束的地方,不会自动换行。printf()返回值是整数,是输出字符…
高等数学部分公式与定理

一、重要的函数极限$\lim_{x\to0}\frac{\sin\:x}{x}=1$$\lim_{x\to0}(1+x)^{\frac{1}{x}}=e$$\lim _{x\to 0}\frac {\ln ( 1+ x) }x= \operatorname* { lim} _{x\to 0}\frac 1x\ln ( 1+ x) = \operatorname* { lim} _{x\to 0}\ln ( 1+ x) ^{\frac 1x}= \ln \lim _{x\to 0}( 1+ x) ^{\frac 1x}= \ln e= 1$$\lim_{x…
中学部分不常用数学公式

$x\in A\Leftrightarrow x\not\in \complement*{U}A,x\in \complement*{U}A\Leftrightarrow x\not\in A,\varnothing\subsetneqq A\Leftrightarrow A\neq\varnothing $$\complement_{U}(A\cap B)=\complement_{U}A\cup C_{U}B;\complement_{U}(A\cup B)=\complement_{U}A\cap\complement_{U}B\:$$A\subs…
数列和函数极限的28种定义

数列极限$\lim _{n\to + \infty }a_n= a$ (存在),当$n>N$时恒有$|a_n-a|<\varepsilon$。$\lim_{n\to+\infty}a_n=\infty\Leftrightarrow\forall M>0,\exists N\in Z^+$,当$n>N$时恒有$|a_n|>M$。$\lim_{n\to+\infty}a_n=+\infty\Leftrightarrow\forall M>0,\exists N\in Z^+$,当$n>N$时恒有$a_n>M$。…
集合、关系、运算、结构

一、集合、子集、幂集、直积设$A,B$是两个集合,如果$A,B$含的元素全相同,就说$A,B$相等,记作$A=B$。如果对任意的$a\in A$,均有$a\in B$,则称$A$是$B$的子集,或说$A$含于$B$,$B$包含$A$,记作$A\subset B$.对任意的集合$A$ ,均有$\emptyset\subset A,A\subset A$.显然,集合$A,B$相等,当且仅当$A\subset B$与$B\subset A$同时成立。非空集合$A$的所有子集组成的集合称为$A$的幂集,记作:$P(A)$或$2^A$。若集$A$含有$n$个不同元…
平衡二叉树(Treap)

二叉搜索树的插入、查找、删除等操作的效率与树高成正比,因此在创建二叉搜索树时要尽可能地通过调平衡压缩树高。平衡树有很多种,例如AVL树、Treap、伸展树(Splay)、SBT、红黑树等。Treap简介特点与作用Treap,即Tree+Heap,又叫做树堆,它同时满足了二叉搜索树和堆两种性质。二叉搜索树满足中序有序性,输入的序列不同,创建的二叉搜索树也不同,在最坏的情况下(比如只有左子树或者只有右子树),会退化为线性。若一个二叉搜索树插入的节点顺序时随机的,则得到的二叉搜索树在大多情况下是平衡的,即使存在一些极端的情况但这种情况发生的概率很小,因此以随机…
可持久化线段树

[card title="主席树" color="info"]主席树,又叫可持久化权值线段树,也叫函数式线段树,是可持久化线段树的子集。在本文中,我们可以认为主席树等于可持久化线段树[/card]可持久化线段树简介基本结构、特点、作用在这篇文章中已经提到过:线段树扩展:权值线段树总的来说就是每次修改或插入一个值,就新建一个根节点,并且向下递归去新建其他节点。优点解释每次插入操作最多创建的节点数都为$\log n$(从根到叶子),一共执行了$n$次插入操作,可持久化线段树的节点总数为$n \log n$,而$n$棵单独的线段树的总节点数是$n^2$,很明显…
二叉堆

二叉堆简介二叉堆是一种基础数据结构,对于其他数据结构来说,支持的操作有限,也就插入,查询,删除这一类。二叉堆的结构从二叉堆的结构说起,它是一棵二叉树,并且是完全二叉树,每个结点中存在一个权值。堆性质:父亲的权值不小于儿子的权值(大根堆)。同样的,我们可以定义小根堆。本文以大根堆为例。由堆性质,树根存的是最大值。对于堆的每个子树,它同样也是一个堆。考虑使用一个序列h来表示堆,$h_i$的两个儿子分别是$h_{2i}$和$h_{2i+1}$,$1$是根节点:来自于:OI Wiki具体每个节点的对应关系如上图。二叉堆的基本操作插入操作插入操作是指向二叉堆中插入…
各种群的定义

一、定义代数系统$\langle G: \circ \rangle$称为群,如果:运算封闭性。运算$\circ$满足结合律,即$\forall a,b,c\in G,a\circ(b\circ c)=(a\circ b)\circ c$$G$关于运算$\circ$存在单位元,即$\exists e\in G$,使 $\forall a\in G$,有 $a\circ e=e\circ a=a$$G$中每个元素关于$\circ$都可逆,即$\forall a\in G,\exists b\in G$使得$a\circ b=$ $b\circ a=e$(单位…
增广矩阵与解线性方程组

一、增广矩阵对于一个由$m\times n$个数排成$m$个横行,$n$个竖列的矩形数表称为$m\times n$矩阵。对于一个$m\times n$的矩阵$A$,我们可以在它的右边加上一个$m\times1$的列向量$\boldsymbol b$,得到一个$m\times(n+1)$的矩阵$(A,\boldsymbol b)$,这个矩阵被称为$A$的增广矩阵。$$A=\begin{pmatrix}a_{11}&a_{12}&\cdots&a_{1n}\\a_{21}&a_{22}&\cdots&a_{2n…
n元向量与高斯消元法

一、$n$元向量在研究问题过程中,有些研究对象可以用多个数组组成的有序数组来描述,例如在$n$元一次方程$a_1x_1+a_2x_2+\cdots+a_nx_n=b$中,可以用其系数和常数$b$排成有序$(n+1)$元数组$(a_1,a_2,\cdots,a_n,b)$来表示;在按照升幂排列成的一元$n$次多项式$P(x)=a_0+a_1x+a_2x^2+a_2x^3+\cdots+a_nx^n$中,可以用其系数组成的$(n+1)$元有序数组$(a_1,a_2,\cdots,a_n)$来表示。由$n$个数$a_1,a_2,\cdots,a_n$组成的有序…