- 博客(21)
- 收藏
- 关注
原创 编译链接和库
编译链接和库GCCgcc options -ON 优化等级为N 范围0~3-IDIR 头文件目录-LDIR 链接文件的目录-lFILE 链接文件-w 禁止所有警告-Wall 显示所有警告-g 添加调试信息简单C程序 c code#include <stdio.h>int main(int argc, char **argv){ printf("hello, gcc &
2016-12-24 14:13:11
411
原创 bash shell
bashshell种类: sh, dash, bash ksh, zsh, csh, tcsh等 echo $SHELL 查看当前shell cat /etc/shells 查看系统支持的shell最常用, Linux预设shell为bash.变量字母, 数字, 下划线组成, 不允许数字开头.定义: VAR=value 使用: $VAR 名称 功能 局部变量 仅在本shell进程
2016-12-23 20:35:56
363
原创 Linux网络和进程管理命令
网络和进程管理命令网络管理命令ping IP_ADDR 测试网络是否连通 -s N 发送N个字节-i N间隔N秒ping一次-c N ping次数为N次traceroute IP_ADDR/HOSTNAME 显示路由追踪信息route 显示路由表 -n 数字形式添加和删除路由表条目 route add -net IPADDR netmask NETMASK gw GATEWAYr
2016-12-22 19:50:09
608
原创 VIM
VIM进入插入模式 命令 光标位置 i 字符处 I 行首 a 字符后 A 行尾 O 在上行新建一行处 o 在下行新建一行处退出与保存保存退出 ZZ 保存退出:w 保存:wq 保存退出:x 保存退出(如果内容和源文件一致 则不保存):q! 不保存退出另存 :w FILE 保存为FILE:w! 保存只读文件(root):N,M2
2016-12-22 19:37:18
384
原创 Linux C Socket
Linux C SocketTCP/UDP 服务器和客户端的动作 动作 TCP UDP 客户端 建立套接字(socket) Y Y Y 绑定IP地址和端口号(bind) Y Y Y 监听(listen) Y N N 接受请求(accept) Y N N 连接(connect) N N Y字节序转换 机器
2016-12-16 22:32:09
450
原创 Linux C 线程与竞争
Linux C 线程和竞争Linux系统下的多线程遵循POSIX线程接口, 称为pthread. 使用POSIX线程需要在编译时加上-lpthread选项线程pthread_create 创建线程pthread_join 等待指定线程结束pthread_exit 退出线程创建线程c code#include <stdio.h>#include <stdlib.h>#include <e
2016-12-15 15:38:23
731
1
原创 动态规划
动态规划最大连续子序列和从O(N^3)到O(N) 问题: 给定一个序列, 求出最大连续的子序列和.穷举算法 O(N^3)python codeL = [-2, 11, -4, 13, -5, -2]N = len(L)max_sum = L[0]for begin in range(N): for end in range(begin, N): sum = 0
2016-12-15 14:39:57
432
原创 贪心算法
贪心算法最大购买问题:有N元钱, 有三种商品, 价格分别为150元, 200元, 350元, 在最大购买下最少能剩下多少钱. 思路:350=150+200, 排除此商品, 全购买150元的商品, 如果还有余钱, 把150元的商品换成200元. python codeN = 580cnt = N//150sum = N%150while sum>=50 and cnt>0: sum -
2016-12-15 14:37:23
385
原创 图论
图论使用邻接表和邻接矩阵中的邻接矩阵描述图的遍历图例如下, 0为起点. 0 / \ 1 2 \ / \ 3 4深度优先搜索(DFS)python codeN = 5G = [ [ 0, 1, 1, 0, 0 ], [ 1, 0, 0, 1, 0 ], [ 1, 0, 0, 1, 1 ], [ 0, 1, 1, 0, 0
2016-12-15 11:19:18
343
原创 Java OOP
Java OOP构造方法对象被创建时用来初始化对象所调用的方法构造方法名必须和类名一致如果没有自定义构造方法, 会默认定义空构造方法.继承extends 继承类 implements 实现接口特性拥有父类非private的属性和方法可以拥有自己的属性和方法(对父类进行扩展)可以用自己的方式重写(覆盖)父类的方法只能继承1个类, 但可以实现多个接口.对象引用super 当前对象的父对
2016-12-15 08:54:02
205
原创 bash shell特性
Bash Shell特性内置命令和变量echo STR 输出字符串STR并换行 -n 不换行-e 启用转义字符printf STR 类似C语言的格式输出STRread VAR… 读取变量 -p MSG 显示提示信息MSG-s 不显示输入的内容-t 输入超时时间变量相关命令 env 列出所有环境变量set 列出所有环境变量以及自定义变量(当前bash有效)export 显示所有
2016-12-14 15:50:51
461
原创 Linux权限与用户管理
Linux权限与用户管理权限与用户类别rwx分别代表 读/写/执行 (权限) ugoa分别代表 属主/属组/其他人/所有人 (用户类别) MODE代表0000-7777的权限(数字表示)文件与目录权限默认权限 umask命令查看默认权限掩码(/etc/umask) umask改变默认权限的2种方式 umask MODE umask [ugoa][+-=][rwx] 类型 默认权限
2016-12-14 15:49:41
679
原创 Linux 四大命令
Linux四大命令 命令 功能 find 按目录处理文件 grep 按文件处理内容 sed 按行处理内容 awk 按段处理内容find [path…] [options] [action]功能: 查找指定目录下符合条件的文件 默认: 在当前目录查找所有文件并显示 其他: 可使用-a/-o/-not来使用多个选项进行组合查找根据文件名查找 -name F
2016-12-14 15:46:28
603
原创 Linux常用命令
Linux常用命令文件目录管理命令cd DIR 切换当前目录到指定目录ls FILE… 列出 文件/目录 目录下文件 -i 显示inode号-a 显示隐藏文件-l 显示详细信息touch FILE… 创建/更新文件时间戳 -a 更新访问时间-m 更新修改时间-c 不会创建文件-t 指定时间mv FILE… FILE/DIR 重命名/移动 文件/目录rm FILE…/DIR…
2016-12-14 15:42:13
293
原创 设计模式 单例
Singleton设计模式1.使用时生成(非线程安全)java codeclass Singleton { private static Singleton instance = null; private Singleton() {} public static Singleton getInstance() { if (instance == null) {
2016-12-14 15:39:56
268
原创 Linux C 进程与进程间通信
Linux C 进程与进程间通信进程常用APIgetpid 获取当前进程IDgetppid 获取当前进程的父进程IDfork 创建一个进程, 子进程中返回0, 父进程中返回子进程pid.wait函数族 等待子进程结束, 回收子进程资源. wait 等待所有子进程结束waitpid 等待特定子进程结束(也可所有)exec函数族 执行外部程序, 完全替换当前进程内容, 后缀意义如下. l
2016-12-14 14:14:41
1079
原创 Linux C 文件操作
Linux C 文件编程系统调用比标准库移植性差(不同OS接口不一定一致) 系统调用会进入内核态, 对程序运行的开销较大. 默认文件描述符 0:标准输入 1:标准输出 2:标准错误输出文件常用APIopen 打开文件, 返回文件描述符.close 关闭文件read 读取文件, 返回读取的字节.write 写入文件, 返回写入的字节.access 判断 文件/目录 是否存在及访问权限f
2016-12-14 14:14:04
411
原创 分治
分治算法二分查找问题: 在有序的序列中找数, 找到返回下标, 找不到返回-1. 思路:跟中间数进行比较, 每次序列减半再递归查找. python codedef part_find(A, n, start_idx): if not A: return -1 mid = len(A)//2 if A[mid] == n: return mid+s
2016-12-10 10:18:00
225
原创 博弈论
博弈论奇异局势: 面对此局势, 不管做出任何动作, 都将输掉最终比赛.巴什博奕(Bash Game)问题:一堆n个物品, 两个人轮流从这堆中取物品, 规定每次至少取一个, 最多取m个, 最后取光者胜, 先取如何必胜?(n>m+1) 思路:当n%(m+1)==0时为奇异局势, 第一次通过取n%(m+1)个到达奇异局势, 接下来对手取x个, 取m+1-x个继续达到奇异局势, 重复此步骤.判断能否取胜
2016-12-10 10:15:21
401
原创 BFS和状态生成树
BFS和状态生成树走迷宫的最短路径问题: 给出一个起点和终点, 求起点走到终点的最短距离. 思路: 穷举所有可能, 按步数递增依次搜寻. 起点(0,0) 终点(4,4) 1为墙(不可走) python codefrom queue import QueueM = [ [0, 0, 1, 0, 0], [0, 0, 0, 0, 0], [0, 1, 1, 1, 0],
2016-12-10 10:10:50
1334
原创 DFS与回溯法
DFS与回溯法DFS排列数问题: 生成1~n的排列 思路: 穷举所有可能 在生成结果数组前把重复的去掉 python codeA = [None for i in range(10)]N = 3def dfs(cur): if cur == N: print(A[:N]) else: for i in range(1, N+1):
2016-12-10 10:05:42
6573
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人