文章目录

  • 课程导论
  • 基础篇 Linux入门
    • Linux介绍
    • Linux和Unix的关系
    • Linux和Windows比较
  • 基础篇 Linux的目录结构
    • 基本介绍
    • 具体的目录结构
  • 实操篇 vi和vim的使用
    • vi和vim的基本介绍
    • vi和vim的三种常见模式
    • vi和vim模式的相互切换
    • vi和vim快捷键
  • 实操篇 开机、重启和用户登录注销
    • 关机&重启命令
    • 用户登录和注销
  • 实操篇 用户管理
    • 创建用户指定密码
    • 查询切换用户
    • 组的管理
    • 用户和组的配置文件
  • 实操篇 实用指令
    • 运行级别和找回root密码
    • 帮助指令
    • 文件目录类指令
    • 时间日期类指令
    • 搜索查找类指令
    • 压缩和解压类指令
  • 实操篇 组管理和权限管理
    • 组管理
    • 权限详细介绍
    • 权限管理
  • 实操篇 定时任务调度
    • crond 任务调度
  • 实操篇 磁盘分区、挂载
    • 分区基础知识
    • Linux分区
    • 磁盘查询实用指令
  • 实操篇 进程管理
    • 基本介绍
    • 显示系统执行的进程
    • 终止进程
    • 服务管理
    • 监控服务
  • 实操篇 PRM与YUM
    • rpm包的管理
    • yum包的管理

课程导论

  • 本套Linux课程内容

  • Linux学习方向

    Linux运维工程师:服务器的规划、调试优化、日常监控、故障处理、数据备份、日志分析,服务器瘫痪了,要迅速的恢复

    Linux嵌入式工程师:熟练掌握Linux下各种驱动程序开发,还有就是在嵌入式系统中进行程序开发

  • Linux的应用领域

    个人桌面领域的应用:此领域是传统Linux最薄弱的环节,传统Linux由于界面简单、操作复杂、应用软件少的缺点,一直被windows所压制,但近些年来随着ubuntu、fefora等优秀桌面环境的兴起,同时各大硬件厂商对齐支持的加大,Linux在个人桌面领域的占有率在逐渐的提高。

  • 服务器领域:Linux在服务器领域的应用是最强的。Linux免费、稳定、高效等特点在这里得到了很好的体现,近些年来Linux服务器市场得到了飞速的提升,尤其在一些高端领域尤为广泛。

    嵌入式领域:近些年来Linux在嵌入式领域的应用得到了飞速的提高。Linux运行稳定、对网络的良好支持性、低成本,且可以根据需要进行软件裁剪,内核最小可以达到几百KB等特点,使其近年来在嵌入式领域的应用得到非常大的提高。

  • Linux高手进阶之路

  • Linux的学习方法

基础篇 Linux入门

Linux介绍

  1. Linux怎么读【里妞克斯,利尼克斯,里纳克斯】

  2. Linux是一款操作系统,免费,开源,安全,高效,稳定,处理高并发特别强悍,现在很多的企业级的项目都部署到Linux/unix服务器运行

  3. Linux创始人-linux 林纳斯

  4. Linux的吉祥物——企鹅

  5. Linux的主要的发行版

  6. 目前主要的操作系统有:windows,android,车载系统,linux

Linux和Unix的关系

Linux和Windows比较

基础篇 Linux的目录结构

基本介绍

Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。

深刻理解linux树状文件目录是非常重要的,记住一句经典的话,在Linux世界里,一切皆文件

具体的目录结构

  • /bin(重点,/usr/bin,/usr/local/bin)

    是Binary的缩写,这个目录存放着最经常使用的命令

  • /sbin(/usr/bin,/usr/local/sbin)

    s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序

  • /home(重点

    存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的

  • /root(重点

    该目录为系统管理员,也称作超级权限者的用户主目录

  • /lib

    系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库

  • /lost+found

    这个目录一般情况下是空的,当系统非法关机后,这里都存放了一些文件

  • /etc(重点

    所有的系统管理所需要的配置文件和子目录

  • /usr(重点

    这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录

  • /boot(重点

    存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件

  • /proc

    这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息

  • /srv

    service的缩写,该目录存放一些服务启动之后需要提取的数据

  • /sys

    这是linux2.6内核的一个很大的变化,该目录下安装了2.6内核中新出现的一个文件系统sysfs

  • /tmp

    这个目录是用来存放一些临时文件的

  • /dev

    类似于windows的设备管理器,把所有的硬件用文件的形式存储

  • /media(重点

    linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下

  • /mnt(重点

    系统提供该目录是为了用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里的内容了

  • /opt

    这是给主机额外安装软件所摆放的目录。如安装ORACLE数据库就可放到该目录上。默认为空。

  • /usr/local(重点

    这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序。

  • /var(重点

    这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下,包括各种日志文件

  • /selinux(security-enhanced linux)

    SELinux是一种安全子系统,它能控制程序只能访问特定文件

实操篇 vi和vim的使用

vi和vim的基本介绍

所有的Linux系统都会内建vi文本编辑器。

Vim具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

vi和vim的三种常见模式

  1. 正常模式

    以vim打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用【上下左右】按键来移动光标,你可以使用【删除字符】或【删除整行】来处理档案内容,也可以使用【复制、贴上】来处理你的文件数据

  2. 插入/编辑模式

    按下i,I,o,O,a,A,r,R等任何一个字母之后才会进入编辑模式,一般来说按i即可

  3. 命令行模式

    在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开vim、显示行号等的动作则是在此模式中达成的

快速入门案例

使用vim开发一个Helloword.java程序,保存步骤说明和演示

//创建helloworld.java文件
touch helloworld.java//进入helloworld.java文件,正常模式
vim helloworld.java//进入编辑模式
i//编辑代码
public class helloworld {public static void main(String[] args){System.out.println("hello,world~");}
}//切入命令行模式,保存代码
esc //先退出编辑模式,然后:可以切入命令行模式
:wq //保存代码,并退出命令行模式

vi和vim模式的相互切换

vi和vim快捷键

  • 一般模式拷贝当前行(yy),拷贝当前行向下的5行(5yy),并粘贴§

  • 一般模式删除当前行(dd),删除当前行向下的5行(5dd)

  • 一般模式下,在文件中查找某个单词,[命令模式下:(/关键字),回车查找,输入(n)就是查找下一个]

  • 一般模式下,使用快捷键到达文档的最首行[gg]和最末行[G]

  • 一般模式下,在一个文件中输入“xxx”,然后又撤销这个动作(u)

  • 一般模式下,并将光标移动到10行shift+g

    第一步:输入10

    第二步:输入shift+g

    第三步:回车

  • 命令行模式下,设置文件的行号,取消文件的行号。[命令行下(: set nu)和(: set nonu)]

实操篇 开机、重启和用户登录注销

关机&重启命令

用户登录和注销

实操篇 用户管理

创建用户指定密码


Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

Linux系统的用户需要至少要属于一个组。

添加用户

useradd 用户名
  • 当创建用户成功后,会自动的创建和用户同名的家目录
  • 也可以通过useradd -d 指定目录 新的用户名,给新创建的用户指定家目录

指定/修改密码

passwd 用户名 //只有根目录才能指定用户密码
  • 在工作中,密码必须复杂点
  • 使用passwd指定密码时,界面是看不到的

删除密码

userdel 用户名

查询切换用户

查询用户信息

id 用户名
  • 当用户名不存在时,返回“无此用户”

切换用户

在操作Linux中,如果当前用户的权限不够,可以通过su - 指令,切换到高权限用户,比如root

su - 切换用户名
  • 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要
  • 当需要返回到原来用户时,使用exit指令

组的管理

查看当前用户/登录用户

whoami/ who am I

用户组

类似于角色,系统可以对有共性的多个用户进行统一的管理

//新增组
groupadd 组名//删除组
groupdel 组名//增加用户时直接加上组
useradd -g 用户组 用户名//修改用户的组
usermod -g 用户组 用户名

用户和组的配置文件

实操篇 实用指令

运行级别和找回root密码

指定运行级别

切换到指定运行级别的指令

init [0123456]

找回root密码

进入单用户模式,然后修改root密码。因为进入单用户模式,root不需要密码就可以登录。

帮助指令

当我们对某个指令不熟悉时,我们可以使用Linux提供的帮助指令来了解这个指令的使用方法。

//man获得帮助信息
man [命令或配置信息] (功能描述: 获得帮助信息)//help指令
help命令 (功能描述: 获得shell内置命令的帮助信息)

百度帮助更直接

文件目录类指令

  • pwd:显示当前工作目录的绝对路径

  • ls

    ls [选项] [目录或是文件]
    /*常用选项a) -a: 显示当前目录所有的文件和目录,包括隐藏的b) -l: 以列表的方式显示信息
    */
    
  • cd

    cd [参数] (功能描述: 切换到指令目录)
    /*常用参数绝对路径或相对路径a)cd ~ 或者cd : 回到自己的家目录b)cd .. 回到当前目录的上一级目录
    */
    
  • mkdir:用于创建目录

    mkdir [选项] 要创建的目录
    /*常用选项-p 创建多级目录
    */
    
  • rmdir:删除空目录

    rmdir [选项] 要删除的空目录
    

    rmdir删除的是空目录,如果目录下有内容是无法删除的

    如果需要删除非空目录,需要使用rm -rf 要删除的目录

  • touch:创建空文件

    touch 文件名称
    
  • cp:重要,拷贝文件到指令目录

    cp [选项] source dest
    /*常用选项-r 递归复制整个文件夹
    */
    

    强制覆盖不提示的方法:\cp

  • rm:移除文件或目录

    rm [选项] 要删除的文件或目录
    /*常用选项a)递归删除整个文件夹b)强制删除不提示
    */
    

    强制删除不提示的方法:带上 -f 参数就行

  • mv:移动文件与目录或重命名

    mv oldNameFile newNameFile //重命名
    mv /temp/movefile /targetFolder //移动文件
    
  • cat:查看文件内容

    cat [选项] 要查看的文件
    /*常用选项:a)-n 显示行号
    */
    

    cat只能浏览文件,而不能修改文件,为了浏览方便,一般会带上 管道命令 | more

  • more:是一个基本vi编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more指令中内置了若干快捷键,详见操作说明

    more 要查看的文件
    

  • less:用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更强大,支持各种显示终端。less指令在显示文件内容时,**并不是一次将整个文件加载之后才显示,**而是根据显示需要加载内容,对于显示大型文件具有较高的效率

    less 要查看的文件
    

  • >(输出重定向)和>>(追加)指令

    1)ls -l > 文件 //列表的内容写入文件a.txt中(覆盖写)
    2)ls -al >> 文件    //列表的内容追加到文件aa.txt的末尾
    3)cat 文件1 > 文件2  //将文件1的内容覆盖到文件2
    4)echo "内容" >> "文件"
    
  • echo:输入内容到控制台

    echo [选项] [输出内容]
    
  • head:用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容

    head 文件   \\查看文件头10行内容
    head -n 5 文件 \\查看文件头5行内容,5可以是任意行数
    
  • tail:输出文件中的尾部内容,默认情况下tail指令显示文件的后10行内容

    1)tail 文件    \\查看文件后10行内容
    2)tail -n 5 文件  \\查看文件后5行内容,5可以是任意行数
    3)tail -f 文件    \\实时追踪该文档的所有更新,工作经常使用
    
  • ln:软链接也叫符号链接,类似于windows里的快捷方式,主要存放了链接其他方式的路径

    ln -s [原文件或目录] [软链接名] \\功能描述: 给原文件创建一个软链接
    

    当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录

  • history:查看已经执行过历史命令,也可以执行历史指令

    history       \\查看已经执行过历史命令
    

时间日期类指令

  • date:显示当前日期

    1)date    \\显示当前时间
    2)date+%Y  \\显示当前年份
    3)date+%m  \\显示当前月份
    4)date+%d  \\显示当前是哪一天
    5)date "+%Y-%m-%d %H:%M:%S"  \\显示年月日时分秒
    
  • cal:查看日历

    cal [选项]  \\不加选项,显示本月日历
    

搜索查找类指令

  • find:将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端

    find [搜索范围] [选项]
    

  • locate:可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。Locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻

    locate 搜索文件
    

    由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库

  • grep 指令和管道符号 |

    grep过滤查找,管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理

压缩和解压类指令

  • gzip/gunzip:用于压缩文件,gunzip用于解压文件

    gzip 文件    \\压缩文件,只能将文件压缩为*.gz文件
    gunzip 文件.gz    \\解压缩文件命令
    
  • zip/unzip:zip用于压缩文件,unzip用于解压的,这个在项目打包发布中很有用的

    zip [选项] XXX.zip 将要压缩的内容   \\压缩文件和目录的命令
    unzip [选项] XXX.zip  \\解压缩文件
    /*zip 常用选项-r 递归压缩,即压缩目录unzip 常用选项-d<目录>    指定解压后文件的存放目录
    */
    
  • tar:打包指令,最后打包后的文件是.tar.gz的文件

    tar [选项] XXX.tar.gz 打包的内容  \\打包目录,压缩后的文件格式.tar.gz
    

  • 指定解压到的那个目录,事先要存在才能成功,否则会报错

实操篇 组管理和权限管理

组管理

在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念。

  1. 所有者
  2. 所在组
  3. 其它组
  4. 改变用户所在的组

文件/目录所有者

一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者

//查看文件的所有者
ls -ahl//修改文件所有
chown 用户名 文件名

组的创建

groupadd 组名

文件/目录所在组

当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组

// 查看文件/目录所在组
ls -ahl// 修改文件所在的组
chgrp 组名 文件名

其它组

除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组

改变用户所在组

在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组

1)usermod -g 组名 用户名
2)usermod -d 目录名 用户名 改变该用户登陆的初始目录

权限详细介绍




权限管理

修改权限-chmod



修改文件所有者-chown

修改文件所在组-chgrp

chgrp newgroup file //改变文件的所在组

实操篇 定时任务调度

crond 任务调度

crontab 进行定时任务的设置

任务调度:是指系统在某个时间执行的特定的命令或程序

任务调度分类:

  1. 系统工作:有些重要的工作必须周而复始地执行,如病毒扫描等
  2. 个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份
crontab [选项]
/*常用选项-e 编辑crontab定时任务-l 查询crontab任务-r 删除当前用户所有的crontab任务
*/conrtab -r    \\终止任务调度
crontab -l  \\列出当前有哪些任务调度
service crond restart [重启任务调度]

实操篇 磁盘分区、挂载

分区基础知识


Linux分区

原理介绍

对Linux来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个跟目录,一个独立且唯一的文件结构,Linux中每个分区都是用来组成整个文件系统的一部分

Linux采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间一个目录下获得

硬盘介绍

  1. Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘
  2. 对于IDE硬盘,驱动器标识符为“hdx~”,其中“hd”表明分区所在设备的类型,这里是指IDE硬盘了。“x”为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘),~代表分区,前4个分区用数字1到4表示,他们分别是主分区或扩展分区,从5开始就是逻辑分区。例如,hda3表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示为第二个IDE硬盘上的第二个主分区或扩展分区
  3. 对于SCSI硬盘则标识为“sdx~”,SCSI硬盘是用“sd”来表示分区所在设备的类型的,其余则和IDE硬盘的表示方法一样

使用lsblk指令查看当前系统的分区情况

磁盘查询实用指令

查询系统整体磁盘使用情况

df -h
df -l
df -lh

查询指定目录的磁盘占用情况

du -h /目录
/*查询指定目录的磁盘占用情况,默认为当前目录-s 指定目录占用大小汇总-h 带计量单位-a 含文件--max-depth=1 子目录深度-c 列出明细的同时,增加汇总值
*/

实操篇 进程管理

基本介绍

  1. 在Linux中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个ID号
  2. 每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程
  3. 每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行
  4. 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直到关机才结束

显示系统执行的进程



终止进程

终止进程kill和killall

若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程。使用kill命令来完成此项任务。

kill [选项] 进程号    \\通过进程号杀死进程
killall 进程名称    \\通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用
/*常用选项-9 表示强迫进程立即停止
*/

查看进程树pstree

pstree [选项]      \\可以更加直观的来看进程信息
/*-p 显示进程的PID-u 显示进程的所属用户
*/

服务管理

服务(service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql,sshd 防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点

service 服务名 start|stop|restart|reload|status
//在CentOS7后,不再使用service,而是systemctl

查看服务名

方式1:使用setup->系统服务就可以看到

方式2:/etc/init.d/服务名称

服务的运行级别

//查看或者修改默认级别: vi/etc/inittab

Linux系统有7种运行级别:常用的是级别3和5

  • 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
  • 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
  • 运行级别2:多用户状态(没有NFS),不支持网络
  • 运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
  • 运行级别4:系统未使用,保留
  • 运行级别5:X11控制台,登陆后进入图形GUI模式
  • 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

开机的流程说明


chkconfig指令

通过chkconfig命令可以给每个服务的各个运行级别设置自启动/关闭

chkconfig --list|grep xxx //查看服务
chkconfig 服务名 --list
chkconfig --level 5 服务名 on/off

监控服务

动态监控进程

top与ps命令很相似。它们都用来显示正在执行的进程。Top与ps最大的不同之处,在于top在执行一段时间可以更新正在运行的进程。

top [选项]


监控网络状态

  1. 查看系统网络情况netstat

    netstat [选项]
    /*-an 按一定顺序排列输出-p 显示哪个进程在调用
    */
    
  2. 检测主机连接命令ping

    是一种网络检测工具,它主要是用于检测远程主机是否正常,或是两部主机间的介质是否为断、网线是否脱落或网卡故障

    ping 对方ip地址
    

实操篇 PRM与YUM

rpm包的管理

一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,类似windows的setup.exe,这一文件格式名称虽然打上了RedHat的标志,但理念是通用的。

Linux的分发版本都有采用(suse,redhat,centos等等),可以算是公认的行业标准了。

rpm包的简单查询指令

查询已安装的rpm列表

rpm -qa|grep xx

rpm包名基本格式

一个rpm包名:firefox-45.0.1-1.el6.centos.x86_64.rpm

名称:firefox

版本号:45.0.1-1

适用操作系统:el6.centos.x86_64

表示centos6.x的64位系统

如果是i686、i386表示32位系统,noarch表示通用

rpm包的其它查询指令


卸载rpm包

rpm -e RPM包的名称

yum包的管理

Yum是一个Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。

//查询yum服务器是否有需要安装的软件
yum list|grep xx软件列表//安装指定的yum包
yum install xxx x

Linux入门笔记-尚硅谷韩顺平-基础篇实操篇相关推荐

  1. 【尚硅谷|韩顺平】数据结构和算法

    文章目录 前言: 数据结构和算法 数据结构和算法的概述 数据结构和和算法的关系 数据结构 线性结构和非线性结构 非线性结构 稀疏 sparsearray 数组 基本介绍: 稀疏数组的处理方法是: 应用 ...

  2. linux一些常用指令(根据尚硅谷韩顺平老师视频所写,都是自己手打的)

    ` vim和vi的基本介绍 所有的 Linux 系统都会内建 vi 文本编辑器. Vim 具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别 语法的正确性,方便程序设计.代码补完. ...

  3. 数据结构与算法-普利姆算法(Prim) | 尚硅谷韩顺平

    最小生成树 给定一个带权无向连通图,选取一棵树,让树所有边上权的总和最小,叫最小生成树 N个顶点,一定有N-1条边 包含全部顶点 N-1条边都要在图中 算法介绍 普里姆算法求最小生成树,也就是在包含n ...

  4. 【数据结构与算法】尚硅谷韩顺平老师+含java代码(更新中)

    数据结构与算法 程序 = 数据结构 + 算法 数据结构:树.链表.图等 线性结构 数组.队列.链表和栈 非线性结构 二维数组,多维数组,广义表,树结构,图结构 稀疏数组 稀疏数组的好处时压缩数组 在这 ...

  5. 数据结构与算法-克鲁斯卡尔算法(Kruskal) | 尚硅谷韩顺平

    提出问题 基本介绍 克鲁斯卡尔(Kruskal)算法,求加权连通图最小生成树的算法 基本思想:按权值从小到大顺序选择n-1条边,保证n-1条边不够成回路 具体做法:先构造一个只有n顶点的森林,然后按权 ...

  6. MySQL学习笔记——尚硅谷李玉婷经典版MySQL基础笔记(一)

    MySQL学习笔记--尚硅谷李玉婷经典版MySQL基础笔记(一) MySQL学习笔记目录 MySQL学习笔记--尚硅谷李玉婷经典版MySQL基础笔记(一) 一.基础知识 1.MySQL的语法规范 2. ...

  7. (尚硅谷java零基础教程)学习笔记day7/8-数组

    1.数组的概述 1.1 定义 数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理. 1.2 数组的相关概念 数组名 元素 数组的索引 ...

  8. maven学习笔记——尚硅谷

    文章目录 maven学习笔记--尚硅谷 第一章 Maven概述 第一节 为什么要学习Maven 1.Maven 作为依赖管理工具 1.1 jar 包的规模 1.2 jar 包的来源 1.3 jar 包 ...

  9. 电商数仓描述_笔记-尚硅谷大数据项目数据仓库-电商数仓V1.2新版

    架构 项目框架 数仓架构 存储压缩 Snappy与LZO LZO安装: 读取LZO文件时,需要先创建索引,才可以进行切片. 框架版本选型Apache:运维麻烦,需要自己调研兼容性. CDH:国内使用最 ...

最新文章

  1. linux常用命令linux自动挂载WinXP系统下的分区
  2. java web开发中Filter使用Annotation配置 (转载)
  3. rust相框加载图片代码_Rust 能取代 Python,更好的实现神经网络?
  4. 修改用户名_新华美育查找用户名及修改密码的方法分享
  5. Kafka设计解析(八)- Exactly Once语义与事务机制原理
  6. MySQL动态行转列
  7. “.Net 社区虚拟大会”(dotnetConf) 2016 Day 1 Keynote: Scott Hunter
  8. 电商大厂面试都有哪些套路?
  9. linux服务器配置python环境_服务器python环境配置福利,CentOS ,Linux 一键下载python3和环境配置...
  10. 算法:顺时针遍历矩阵 螺旋矩阵转换为顺时针列表spiral matrix
  11. 移动硬盘上装linux系统 Ubuntu
  12. 9 个将改变一切的物联网应用
  13. 批量查询域名是否注册
  14. 高德地图之逆地理编码
  15. vue3 tsx语法
  16. 【观察】中国跨境电商出海再加速背后,如何破解行业同质化竞争困局?
  17. std::true_type和std::false_type
  18. Spring Data JPA-动态查询
  19. 带你了解CPU的世界
  20. 经济学人 纽约时报 时代周刊 华尔斯日报对比

热门文章

  1. Excel从另一个Excel文件中用户自定义区域(UsedRange)拷贝数据和行高、列宽
  2. 惠普服务器螺丝钉型号,【惠普 MicroServer Gen8 服务器开箱展示】包装|成色|外壳|螺丝_摘要频道_什么值得买...
  3. 集群和分布式系统简介
  4. TriggerEvent的动态用法
  5. 语音控制+人脸识别——二次开发 Parrot 无人机!
  6. 一步一步学习iOS 摘记
  7. 称闪送途中出事故 闪送员诉同城必应公司索赔
  8. Windows 10使用技巧
  9. 谷歌书签删除重复_如何删除Google表格中的重复项
  10. 尚未调用 CoInitialize 问题解决