此文用的是最大堆, 最大堆的堆排序之后的数组是升序, 最小堆反之.
堆排序 HeapSort 由 以下两部分组成 :
- 堆化 MaxHeapify
- 建堆 BuildMaxHeap.
. . .
此文用的是最大堆, 最大堆的堆排序之后的数组是升序, 最小堆反之.
堆排序 HeapSort 由 以下两部分组成 :
. . .
与归并排序一样, 快排也是用了分治的思想。
特别注意 : 快排的核心模块是Partition, 而Partition的复杂度为O(N).
你可以想象一个两副牌然后随意取出一张牌pivot,其他的所有牌都跟这张pivot牌比较,
大的放右边那一摞A,小的放左边B。
接着再从左边这一摞B再随意取出一张牌pivot,其他的所有牌都跟这张pivot牌比较,
大的放右边那一摞,小的放左边,递归下去。
A也重复上述步骤递归。
递归结束之后, 左边的都比右边的小, 而且是有序的。
对于分治算法,当每次划分时,算法若都能分成两个等长的子序列时,那么分治算法效率会达到最大。也就是说,基准的选择是很重要的。选择基准的方式决定了两个分割后两个子序列的长度,进而对整个算法的效率产生决定性影响
所以当如果一个有序递增序列, 每次选基准都选最后一个, 那肯定效率很差了啊
. . .
开头字母用变量类型的缩写,其余部分用变量的英文或英文的缩写,要求单词第一个字母大写。
ex:
int iMyAge; “i”是int类型的缩写;
char cMyName[10]; “c”是char类型的缩写;
float fManHeight; “f”是float类型的缩写;
其他:
前缀类型 a b by c cb cr cx,cy dw fn h i l lp m_ n np p s sz w (一一对应关系)
. . .
/etc/profile
:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从 /etc/profile.d
目录的配置文件中搜集shell的设置./etc/profile
有修改的话必须得重启你的修改才会生效,此修改对每个用户都生效。/etc/bashrc
:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
如果你想对所有的使用bash的用户修改某个配置并在以后打开的bash都生效的话可以修改这个文件,修改这个文件不用重启,重新打开一个bash即可生效。
~/.bash_profile
:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
此文件类似于/etc/profile
,也是需要需要重启才会生效,/etc/profile
对所有用户生效,~/.bash_profile
只对当前用户生效。
~/.bashrc
:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.(每个用户都有一个.bashrc文件,在用户目录下)
此文件类似于/etc/bashrc
,不需要重启生效,重新打开一个bash即可生效, /etc/bashrc
对所有用户新打开的bash都生效,但~/.bashrc
只对当前用户新打开的bash生效。
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
另外,/etc/profile
中设定的变量(全局)的可以作用于任何用户,而~/.bashrc
等中设定的变量(局部)只能继承/etc/profile
中的变量,他们是”父子”关系.
~/.bash_profile
是交互式、login 方式进入bash 运行的;~/.bashrc
是交互式 non-login 方式进入bash 运行的;
通常二者设置大致相同,所以通常 ~/.bash_profile
会在其文件中加入以下代码来调用 ~/.bashrc
:# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
. . .
执行命令安装MySQL:sudo apt-get install mysql-server
安装的时候会提示填入一个root的初始密码,先输入个8做初始密码吧
mysql -uroot -p < *.sql(某个sql文件)
. . .
如若有有不明白,还可以前往参考
执行命令安装nginx:sudo apt-get install nginx
测试是否安装成功:在本机的浏览器里访问 localhost ;如果现实”Welcome to nginx!”,表明你的 Nginx 服务器安装成功!
启动 Nginx:sudo /etc/init.d/nginx start
关闭 Nginx:sudo /etc/init.d/nginx stop
重启 nginx:sudo /etc/init.d/nginx restart 或者 sudo service nginx restart
sudo service apache2 stop (如果之前装了apache2则需要sudo apt-get remove apache2 卸载掉apache2然后执行这个stop命令)
. . .