自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 为什么Linux中无法为目录设置硬链接

可能会出现死循环,比如在图中…和.指代的是同一文件。

2018-10-03 08:27:17 1292

原创 gdb常用命令总结

gcc -g main.c //在目标文件加入源代码的信息gdb a.out (gdb) start //开始调试(gdb) n //一条一条执行(gdb) step/s //执行下一...

2018-10-02 09:11:29 1131

原创 Linux文件系统简介

磁盘下的多个分区磁盘->多个分区,每个分区在/dev下相互独立,包含如下之一文件系统数据区域(裸设备)交换区域文件系统的结构引导块:引导操作系统,系统只需要一个但是每个文件系统都有超级快:i节点表容量,逻辑块大小,文件系统大小i节点表:每个文件和目录都有对应的节点数据块i节点表包含维护信息:文件类型,属主,组,权限,时间戳,硬链接数目,文件大小,分配块数目,指向...

2018-09-29 17:36:40 386

原创 Linux文件IO缓存总结

文件IO缓存用户空间缓存(堆)—IO系统调用(write等)—内核空间高速缓存—磁盘write后立即返回,后续内核将缓存区数据写入磁盘read从内核高速缓存中读取设计目的:无需等待磁盘操作,减少磁盘操作大块缓存空间,更少的系统调用,提高IO性能stdio缓冲形式setvbuf,setbuf,不缓冲,行缓冲,全缓冲fflush,刷新stdio缓存->内核缓存(通过write)...

2018-09-29 10:34:55 771

原创 Linux中的ID与权限

实际用户(组)ID:登录ID有效用户(组)ID:一般等于实际,影响进程权限(有效用户ID+有效组ID+辅助组ID)保存的set-User-ID和set-group-ID:对应的有效用户(组)ID复制而来set-User-ID和set-group-ID:有效ID->属主,实现获得特权(chomd),更改属主(chown)非特权用户:设置拥有的文件特权用户:ALL目的...

2018-09-24 19:54:40 1017

原创 算法总结-背包问题

01背包#include <iostream>#include <vector>#include <algorithm>#include <cstring>using namespace std;//01背包//dp[v] = max(dp[v],dp[v-w[i]]+c[i])int main

2018-09-23 18:12:39 338

原创 Linux中进程内存结构

组成(由上至下,由高地址到低地址)映射到虚拟内存的Kcrnel内核:无法被程序访问命令行参数和环境变量栈(用户栈):由上至下伸长,栈帧包括函数实参和局部变量(自动变量)和函数的调用链接信息未分配的内存堆:由下至上伸长,运行时动态分配的空间未初始化的数据段(BSS):未显式初始化的全局变量和静态变量,不分配存储空间知道运行时初始化的数据段:显式初始化的全局变量和静态变量,当程序加载到内...

2018-09-20 10:04:35 534

原创 size_t 与 ssize_t的区别

size_t是无符号类型:32位系统是unsigned int,64位系统上是unsigned long,一般表示一种计数 ssize_t是有符号类型:表示signed size_t ,一般表示读写操作数据块的大小...

2018-09-17 10:27:10 1333

原创 C++ typedef typename 的作用

typedef typename std::vector<T>::size_type size_type;初次读这句话的时候很难理解,仔细回味了一下,其实是这个意思: size_type是在vector类中如此定义的typedef size_t size_type;,相当于size_t和size_type是等价的,在vector未被加载的时候,程序并不知道size_type是个什...

2018-09-12 18:32:48 260

原创 算法总结-Dijkstra

邻接矩阵#include<iostream>using namespace std;const int MAXV = 1000;const int INF = 1e7;int n,G[MAXV][MAXV],vis[MAXV] = {0},d[MAXV];void dij(int s){ fill(d,d+MAXV,INF); d[s] = 0;...

2018-09-11 15:50:33 221

原创 Linux下安装Gradle

http://www.gradle.org/downloads下载并解压到/usr/local#然后设置运行环境sudo vi /etc/profile#在文件中增加GRADLE_HOME输出路径,并且修订PATH设置如下 export GRADLE_HOME=/usr/local/gradleexport PATH=$GRADLE_HOME/bin:$PATH#如果你不希望所...

2018-09-03 15:03:42 971

原创 Linux环境下的ANDROID_HOME和JDK配置

使用Ionic,React Native等框架时经常需要配置ANDROID_HOME和JDK,总结一下配置方法:JDK从官网上下载并解压sudo gedit /etc/profile#添加export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_121 #根据版本修改export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/...

2018-09-03 14:59:51 3276

原创 算法总结-Dijkstra+DFS

#include <cstdio>#include <iostream>#include <algorithm>using namespace std;vector<int> pre[100];int n,G[100][100],d[100],vis[100] = {0},s;int INF = 1e8;void dij(int...

2018-08-04 19:37:56 395

原创 算法总结-图的遍历

DFS#include<cstdio>#include<string>#include<vector>#include<iostream>#include<algorithm>using namespace std;int INF = 100000;int n;//顶点数int G[1000][1000];//图...

2018-08-04 17:39:17 571

原创 算法总结-DP入门

一个问题必须有重叠子问题和最优子结构才可以用动态规划解决。解决方式: 1. 递推:自底向上 2. 递归自顶向下贪心与动态规划的区别 贪心是局部最优解,在每一次选择中,选了就不后悔。动态规划则考虑所有的子问题,选择能笑到最后的。//数塔问题,将一些数字排成塔状,第n层有n个数字,现在从第一层走到第n层//最后路径上最大的数字之和为多少//用DFS做复杂度O(2^n),存在大...

2018-08-02 11:09:40 448

原创 算法总结-深度优先搜索

不碰南墙不会头。 常用于给定一个序列,枚举子序列选择满足某个特征的最优子序列有n见物品,给出重量和价值,在不超过容量V的前提下求最大价值#include<cstdio>int n,v,max = 0; //物品件数,背包容量,最大价值int w[10],c[10];//重量,价值void DFS(int index,int sumW,int su...

2018-07-21 21:53:13 296

转载 Django引入外部数据库

Django引入外部数据库还是比较方便的,步骤如下:1.创建一个项目,修改seting文件,在setting里面设置你要连接的数据库类型和连接名称,地址之类,和创建新项目的时候一致。2.运行下面代码可以自动生成models模型文件 python manage.py inspectdb 这样就可以在命令行看到数据库的模型文件了3.把模型文件导入到app中4.创建一个app dj...

2018-06-27 13:17:30 1684

原创 git clone push需要root权限解决方法

重新装了Linux发现使用git命令必须要sudo,否则会提示权限不够。解决办法:在ssh生成id_rsa.pub密钥时实际上有两个,根目录的家里.ssh文件夹里有一个,用户家里.sh文件夹里有一个,当初在github上传时使用的是前者,座椅必须要root权限才能clone或者push,将后者上传即可解决问题。...

2018-06-27 13:16:58 1621

原创 Linux 的软件安装目录

Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的/usr:系统级的目录,可以理解为C:/Windows/,/usr/lib理解为C:/Windows/System32。 /usr/local:用户级的程序目录,可以理解为C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下。 /opt:用户级的程序目录,可以理解为D:/Software,op...

2018-06-27 13:16:07 500

原创 Linux安装MySQL方法

sudo apt-get install mysql-serverapt-get install mysql-clientsudo apt-get install libmysqlclient-dev安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功:sudo netstat -tap | grep mysql通过上述命令检查之后...

2018-06-27 13:15:31 184

转载 Linux下Github的使用方法

1 Linux下Git和GitHub环境的搭建 安装Git, 使用命令sudo apt-get install git 创建GitHub帐号 生成ssh key,使用命令 ssh-keygen -t rsa -C “your_email@youremail.com”,your_email是你的email 回到github,进入Account Settings,左边选择SSH Keys,Ad...

2018-06-27 13:14:46 196

原创 修改linux下默认的python版本

首先在终端输入:python –verison 查看本机默认采用的python 版本接着进入/usr/local/lib 目录查看当前系统中安装了多少个python版本 如果只有一个,就安装你需要的版本 sudo apt-get install python3 (这里以python3为例)修改默认的版本 并不是删除你不需要的版本,因为系统的许多底层是依赖python的,删除后可能会导致系统...

2018-06-27 13:14:01 449

原创 解决Python爬虫使用requests包控制台输出乱码问题

输出爬取的信息为乱码!解决办法 爬取下来的编码是ISO-8859-1格式,需要转化为utf-8格式,加一句response.encoding = “utf8”

2018-06-27 13:12:38 599 1

转载 通过Nginx部署Django(基于ubuntu)

Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式。  在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求。nginx把所有静态请求自己来处理(这是NGINX的强项)。然后,NGINX将所有非静态请求通过uwsgi传递给Django,由Django来进行处理,从而完成一次WEB请求。  可见,uwsg...

2018-06-25 22:22:33 334

转载 Git:代码冲突常见解决方法

如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候,在发布这个配置文件的时候,会发生代码冲突:error: Your local changes to the following files would be overwritten by merge: protected/config/main.phpPlease, commit y...

2018-06-25 22:17:46 175

转载 MySQL修改数据库字符集

修改数据库字符集:ALTER DATABASE db_name DEFAULT CHARACTER SET character_name [COLLATE ...];把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:ALTER TABLE tbl_name CONVERT TO CHARACTER SET character_name [COLLATE ...

2018-06-25 22:15:31 6811

原创 Linux中转移mysql数据库目录

停止mysql#service mysqld stop复制mysql目录,使用cp -a复制修改三个文件 /etc/my.cnf 更改datadir,socket/etc/init.d/mysqld 修改datadir/usr/bin/mysqld_safe建立软连接,比如:ln -s /home/mysql_data/mysql/mysql.sock /va...

2018-06-25 22:10:59 972

原创 解决Django新建app报错File "manage.py", line 14 ) from exc SyntaxError: invalid syntax

明确当时安装django使用的是pip install django还是pip3 install django 如果是后者,应该使用python3 manage.py startapp app来新建app即可解决报错

2018-06-23 09:37:06 19825 7

原创 Linux下导入导出MySQL

导出数据和表结构:mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql#/usr/local/mysql/bin/ mysqldump -uroot -p abc > abc.sql敲回车后会提示输入密码只导出表结构mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql#/usr/local/mysq...

2018-06-22 21:28:58 137

原创 centos6安装python和pip

安装依赖yum groupinstall -y Development toolsyum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel安装Py...

2018-06-22 21:23:58 3125

原创 Centos 6.X 安装Mysql及简单配置

安装#下载源文件wget http://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm#添加yum源yum localinstall mysql57-community-release-el6-11.noarch.rpm#安装yum install mysql-community-server#yum in...

2018-06-22 21:21:25 154

原创 第15章 面向对象程序设计

面向对象程序设计核心思想继承动态绑定虚函数访问权限派生类向基类的类型转换派生类的构造函数继承和静态成员派生类的声明防止类或函数的继承静态类型和动态类型纯虚函数抽象基类受保护的成员基类的设计在派生类中修改成员权限class和struct派生类的作用域虚析构函数继承的构造函数面向对象程序设计核心思想数据抽象继承动态绑定...

2018-06-19 16:13:37 247

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除