拓扑学入门二
前言江辉有《拓扑学》的内容很全面, 以后再看拓扑学大概就可以对照这这本书的目录来了
点集拓扑学拓扑空间之间的连续映射与同胚
连续映射的定义
连续映射的性质
同胚映射
嵌入与嵌入映射
拓扑基与Tychonoff积空间
拓扑基与子基
乘积空间
分离性公理与可数性公理
分离性公理
可数性公理
拓扑性质的可遗传性与可乘性
Uryshon引理及其应用
Uryshon引理
Tietze扩张引理
Uryshon度量化定理
拓扑空间的紧致性与列紧性
紧致与列紧的定义
列紧空间的性质
紧致空间的性质
局部紧性与仿紧性
局部紧性
仿紧性
连通性与道路连通性
连通性的定义及例子
连通空间的性质
连通分支
局部连通性
道路及其运算
道路连通空间
道路连通分支
局部道路连通
商空间与商映射
商空间
拓扑锥
贴空间
映射柱与映射锥
商映射
闭曲面及其分类
拓扑流形的概念
闭曲面
两类闭曲面
闭曲面分类定理
点网、滤子与收敛性概念的扩张
点网
滤子
函数空间
点态收敛拓扑
X上的一致收敛拓扑
紧开拓扑
k-空间与Ascoli定理
代数拓扑学映 ...
Dancing Links
1. 简介参考维基百科
2. 分析实现参考这里, 写的很详细
Graph DFS
dfs添加顶点到集合在调用dfs的过程中,有四种添加顶点到集合的顺序:
Pre-Order,在递归调用dfs之前将当前顶点添加到queue中
Reverse Pre-Order,在递归调用dfs之前将当前顶点添加到stack中
Post-Order,在递归调用dfs之后将当前顶点添加到queue中
Reverse Post-Order,在递归调用dfs之后将当前顶点添加到stack中
Union-Find Structure
并查集这篇文章写的很好懂
Linux琐记三
1. who命令who命令查询utmp文件并报告当前登录的每个用户。Who的缺省输出包括用户名、终端类型、登录日期及远程主机。
2. w命令执行这项指令可得知目前登入系统的用户有那些人,以及他们正在执行的程序。单独执行linux w命令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。
3. 查看端口使用情况netstat -anp | grep portno比如netstat –apn | grep 8080
4. cat命令高级用法搭配EOF和输入输出流>>及<<使用,例如Haskell的官方安装教程:
cat >> ~/.bashrc <<EOF
export PATH="\$HOME/.cabal/bin:/opt/cabal/1.20/bin:/opt/ghc/7.10.3/bin:\$PATH"
EOF
export PATH=~/.cabal/bin:/opt/cabal/1.22/bin:/opt/ghc/7.10.3/bin:$PATH="
以上可以实现文件追加功能,在.bashrc文件最后追加两句环 ...
C++琐记三
1. C++堆与栈的区别和大神一起从良乡回来, 地铁上突然想起了这个问题就问了下, 大神解释之后茅塞顿开、、、回来又查了查网上的东西, 再看发现理解起来轻松了许多
具体可以参考这篇文章, 还有这个问题
2. NULL在C++中0是NULL
C++琐记二
1. vector1.1 erase以前用vector时只是使用push_back(),pop_back(),begin(),end(),front(),back()等,没用过erase(), 今天搭配iterator用了一下, 才发现很神奇。比如删除一个vector上指定值为val的元素:
for(vector<int>::iterator it = nums.begin(); it != nums.end(); ) {
if( nums[i] == val ) {
nums.erase(it++);
} else {
it++;
}
}
上面这段代码是错误的,而且只要改一处就可以正确。修改后为:
for(vector<int>::iterator it = nums.begin(); it != nums.end(); ) {
if( nums[i] == val ) {
nums.erase(it);
...
Android Studio 与 Gradle
1. 描述
以前是用IntelliJ IDEA直接玩安卓程序的, 但是自从Google根据IDEA开发了新的ide后, 很多开发者都转向Android Studio了, 网络上的有些源代码无法直接在IDEA上编译, 于是下了个Android Studio折腾, 用过IntelliJ IDEA后安装、配置环境都很简单, 不太相同的地方是Google采用Gradle作为Android app开发的包管理器之后, 其自家推出的Android Studio自然得默认下载它, 于是在新建工程的最后一步, 提醒你可能需要配置一下代理才能使用成功的下载安装Gradle, 使用SS代理, 成功下载安装
2. 项目结构新建空白项目的结构:
3. Gradle简介
Gradle是一种依赖管理工具, 基于Groovy语言, 面向Java应用为主, 它抛弃了基于XML的各种繁琐配置, 取而代之的是一种基于Groovy的内部领域特定(DSL)语言。其优点有很多:
像Ant一样,通用灵活的构建工具可以切换的,基于约定的构建框架强大的多工程构建支持基于Apache Ivy的强大的依赖管理支持maven, Iv ...
操作系统六
1. 进程同步和P、V操作若有三个并发进程互斥,如果利用信号灯方式控制其同步关系,那么三个进程的同步过程如下图:
2. Linux系统功能调用的实现机制2.1 Linux系统调用的进入Linux系统的软中断指令是汇编语言指令int 0x80,执行该指令会发生中断,处理机的状态由用户态自陷到内核态(在更新的芯片中添加了sysenter汇编语言指令等)。int 0x80指令使用的异常向量号是128(即16进制的80),该异常向量包含了内核系统调用程序的入口地址。在内核初始化时,已将系统调用处理程序的入口地址送入向量128的中断描述符表表项中,设置段地址为内核开始的地方,段内偏移则指向系统调用处理程序system_call()。当应用程序请求操作系统服务,发出int 0x80指令时,就会从用户态自陷到内核态,并从system_call()开始执行系统调用处理程序。当系统调用处理完毕后,通过iret汇编语言指令返回到用户态。
2.2 系统调用号和系统调用表2.2.1 系统调用号在Linux中,每个系统调用被赋予一个唯一的系统调用号。用户空间的进程通过系统调用号指明要执行的具体系统调用系统调 ...
拓扑学入门一
前言读江辉有《拓扑学》[1]笔记
1. 引言1.1 一笔画问题和哥尼斯堡七桥问题1.2 欧拉(Euler)示性数1.3 图的可平面化处理问题
对于由顶点和线构成的图,如果每个顶点间都有线相连,则这样的图称之为完全图。下图中的K5是完全图,K33不是完全图
所谓图的可平面化问题就是:一个图应当满足什么条件,才可以在平面上不自交的被画出来?这也就是通常说的可嵌入平面的问题。这里说的不自交指的是不同的线不会相交,至于线如何回还转曲不加限制。
Kuratowsky定理
一个图G可以嵌入平面当且仅当G不含有K5或K33同构的子图
有意思的是,K33虽然不能嵌入平面,却可以嵌入Mobius带。
1.4 扭结论(Knot theory)研究1.5 四色问题2. 点集拓扑学2.1 预备知识2.1.1 集合代数与关系
X所有子集构成的集族,称为X的幂集,用2^X表示
笛卡尔积: \(X\times Y=\{(x,y):x\in X,y\in Y\}\). \(X\times Y\)的任一子集R称为X到Y的一个关系。若\((x,y)\in R\),则称x与y是R-相关的,也记为xRy ...