mindmap
Root
A
B
C
graph TD
Start -->c++--> Stop
这是一个标题文字 从这里开始有段内公式了,比如和
行内与独行
#include <iostream>
using namespace std;
/*
来看看这里
*/
int main()
{
int x1, x2, x3=10;
cin >> x1 >> x2 >> x3;
cout << double(x2)/ x1; // 这里需要注释一下
return 0;
}
对顶堆
#include <iostream>
using namespace std;
int main()
{
int a, b;
cin >> a >>b;
a++; // a = a + 1;
++a; // a = a + 1;
double fa, fb;
a=b= -5.8;
fa = fb= 3.0/a;
cout <<a <<" "<<b;
cout<<"Hello,World!" ;
return 0;
}
间隔一下
- 行内公式:将公式插入到本行内,符号:
$公式内容$,如: - 独行公式:将公式插入到新的一行内,并且居中,符号:
$$公式内容$$,如:
上标、下标与组合
- 上标符号,符号:
^,如: - 下标符号,符号:
_,如: - 组合符号,符号:
{},如:
汉字、字体与格式
- 汉字形式,符号:
\mbox{},如: - 字体控制,符号:
\displaystyle,如: - 下划线符号,符号:
\underline,如: - 标签,符号
\tag{数字},如:\tag{11} - 上大括号,符号:
\overbrace{算式},如: - 下大括号,符号:
\underbrace{算式},如: - 上位符号,符号:
\stacrel{上位符号}{基位符号},如:
占位符
- 两个quad空格,符号:
\qquad,如: - quad空格,符号:
\quad,如: - 大空格,符号``,如:
- 中空格,符号
:,如: - 小空格,符号
,,如: - 没有空格,符号``,如:
- 紧贴,符号
!,如:
定界符与组合
- 括号,符号:
()\big(\big) \Big(\Big) \bigg(\bigg) \Bigg(\Bigg),如: - 中括号,符号:
[],如: - 大括号,符号:
{ },如: - 自适应括号,符号:
\left( \right),如:, - 组合公式,符号:
{上位公式 \choose 下位公式},如: - 组合公式,符号:
{上位公式 \atop 下位公式},如:
四则运算
- 加法运算,符号:
+,如: - 减法运算,符号:
-,如: - 加减运算,符号:
\pm,如: - 减甲运算,符号:
\mp,如: - 乘法运算,符号:
\times,如: - 点乘运算,符号:
\cdot,如: - 星乘运算,符号:
\ast,如: - 除法运算,符号:
\div,如: - 斜法运算,符号:
/,如: - 分式表示,符号:
\frac{分子}{分母},如: - 分式表示,符号:
{分子} \voer {分母},如: - 绝对值表示,符号:
||,如:
高级运算
- 平均数运算,符号:
\overline{算式},如: - 开二次方运算,符号:
\sqrt,如: - 开方运算,符号:
\sqrt[开方数]{被开方数},如: - 对数运算,符号:
\log,如: - 极限运算,符号:
\lim,如: - 极限运算,符号:
\displaystyle \lim,如: - 求和运算,符号:
\sum,如: - 求和运算,符号:
\displaystyle \sum,如: - 积分运算,符号:
\int,如: - 积分运算,符号:
\displaystyle \int,如: - 微分运算,符号:
\partial,如: - 矩阵表示,符号:
\begin{matrix} \end{matrix},如:
逻辑运算
- 等于运算,符号:
=,如: - 大于运算,符号:
>,如: - 小于运算,符号:
<,如: - 大于等于运算,符号:
\geq,如: - 小于等于运算,符号:
\leq,如: - 不等于运算,符号:
\neq,如: - 不大于等于运算,符号:
\ngeq,如: - 不大于等于运算,符号:
\not\geq,如: - 不小于等于运算,符号:
\nleq,如: - 不小于等于运算,符号:
\not\leq,如: - 约等于运算,符号:
\approx,如: - 恒定等于运算,符号:
\equiv,如:
集合运算
- 属于运算,符号:
\in,如: - 不属于运算,符号:
\notin,如: - 不属于运算,符号:
\not\in,如: - 子集运算,符号:
\subset,如: - 子集运算,符号:
\supset,如: - 真子集运算,符号:
\subseteq,如: - 非真子集运算,符号:
\subsetneq,如: - 真子集运算,符号:
\supseteq,如: - 非真子集运算,符号:
\supsetneq,如: - 非子集运算,符号:
\not\subset,如: - 非子集运算,符号:
\not\supset,如: - 并集运算,符号:
\cup,如: - 交集运算,符号:
\cap,如: - 差集运算,符号:
\setminus,如: - 同或运算,符号:
\bigodot,如: - 同与运算,符号:
\bigotimes,如: - 实数集合,符号:
\mathbb{R},如:\mathbb{R} - 自然数集合,符号:
\mathbb{Z},如:\mathbb{Z} - 空集,符号:
\emptyset,如:
数学符号
- 无穷,符号:
\infty,如: - 虚数,符号:
\imath,如: - 虚数,符号:
\jmath,如: - 数学符号,符号
\hat{a},如: - 数学符号,符号
\check{a},如: - 数学符号,符号
\breve{a},如: - 数学符号,符号
\tilde{a},如: - 数学符号,符号
\bar{a},如: - 矢量符号,符号
\vec{a},如: - 数学符号,符号
\acute{a},如: - 数学符号,符号
\grave{a},如: - 数学符号,符号
\mathring{a},如: - 一阶导数符号,符号
\dot{a},如: - 二阶导数符号,符号
\ddot{a},如: - 上箭头,符号:
\uparrow,如: - 上箭头,符号:
\Uparrow,如: - 下箭头,符号:
\downarrow,如: - 下箭头,符号:
\Downarrow,如: - 左箭头,符号:
\leftarrow,如: - 左箭头,符号:
\Leftarrow,如: - 右箭头,符号:
\rightarrow,如: - 右箭头,符号:
\Rightarrow,如: - 底端对齐的省略号,符号:
\ldots,如: - 中线对齐的省略号,符号:
\cdots,如: - 竖直对齐的省略号,符号:
\vdots,如: - 斜对齐的省略号,符号:
\ddots,如:
展开查看
```
//// 方法3: 归并排序实现,时间复杂度O(nlogn),空间复杂度O(n)
#include
using namespace std;
const int N = 100010;
int n,a[N],tmp[N]; //tmp为辅助数组
void msort(int le, int ri) {
if(le==ri) return;
int mid=le+(ri-le>>1); // 先算术运算,再移位。移位优先级低。建议mid=le+(ri-le>>1);
msort(le,mid); //拆分
msort(mid+1,ri);
// 此时左右两段数据已经各自有序,类似于后序遍历(左右根)的手法
int i=le,j=mid+1,k=le; // 开始有序表的合并
while(i<=mid && j<=ri) { // 注意各种++
if(a[i]<=a[j])
tmp[k++]=a[i++];
else
tmp[k++]=a[j++];
}
while(i<=mid) tmp[k++]=a[i++]; // 剩余部分原封照搬
while(j<=ri) tmp[k++]=a[j++]; // 剩余部分原封照搬
for(i=le; i<=ri; i++) // 将临时数组的指定段内容复制回去,便于上一层递归时使用
a[i]=tmp[i];
}
int main() {
scanf("%d",&n);
for(int i=0; i<n; i++) scanf("%d",&a[i]);
msort(0,n-1);
for(int i=0; i<n; i++) printf("%d ",a[i]);
}
System.out.println("Hello to see U!");
</code></pre>
</details>