1.BINNԴ?源码?
2.linux系统管理命令shutdown源码linux系统管理命令
3.Docker源码安装附内网镜像安装演示
BINNԴ??
折半搜索(英语:half-interval search),也称二分搜索(英语:binary search)、源码对数搜索(英语:logarithmic search),源码是源码一种在有序数组中查找某一特定元素的搜索算法。搜索过程从数组的源码中间元素开始,如果中间元素正好是源码互斥体源码要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,源码则在数组大于或小于中间元素的源码那一半中查找,而且跟开始一样从中间元素开始比较。源码如果在某一步骤数组为空,源码则代表找不到。源码这种搜索算法每一次比较都使搜索范围缩小一半。源码
折半查找法是源码效率较高的一种查找方法。假设有已经按照从小到大的源码顺序排列好的五个整数a0~a4,要查找的源码红包App协议源码数是X,其基本思想是: 设查找数据的范围下限为l=0,上限为h=4,求中点m=(l+h)/2,用X与中点元素am比较,若X等于am,即找到,停止查找;否则,触玩捕鱼源码若X大于am,替换下限l=m+1,到下半段继续查找;若X小于am,换上限h=m-1,到上半段继续查找;如此重复前面的过程直到找到或者l>h为止。如果l>h,说明没有此数,中源码看什么打印找不到信息,程序结束。
函数实现如下:
bin_search(int A[],int n,int key){int low,high,mid;
low = 0;
high = n-1;
while(low<=high)
{
mid =(low + high)/2;
if(A[mid]==key)return mid;
if(A[mid]<key){
low =mid + 1;
}
if(A[mid]>key){
high= mid - 1;
}
}
return -1;
}
C语言实现代码
#include <stdio.h>int main()
{
int a[]={ 0,1,2,3,4,5,6,7,8,9,},min=0,max=,mid,n; //max为数列长度,a[0]作为第一个数组元素
printf("请输入您要查找的数:\n");
scanf("%d",&n);
while(min+1!=max)
{
mid=(min+max)/2;
if (n>a[mid]) min=mid;
else if (n<a[mid]) max=mid;
else
{
printf("输入的数在数列的第%d位\n",mid);
exit(0);
}
}
if(n==a[max])
{
max+=1;
printf("\n输入的数在数列的第%d位\n",max);
}
else if(n==a[min])
{
min+=1;
printf("\n输入的数在数列的第%d位\n",min);
}
else if(n!=a[mid])
printf("\n输入的数不在数列中");
}
Dev-c++实现
#include <stdio.h>
#include <stdlib.h>
void main()
{
int a[]={ 1,2,3,4,5,6,7,8,9,,,,,};
int n,m,top,bot,mid;
top=m=1; //此处修改top=0;m=1;
bot=;
printf("please input a number:");
scanf("%d",&n);
while(top<=bot)
{
mid=(top+bot)/2;
if(n==a[mid])
{
printf("这是第%d个元素的值。\n",mid+1);
m=0;
break;
}
else if(n>a[mid])
top=mid+1;
else if(n<a[mid])
bot=mid-1;
}
if(m)
printf("无此数。\n");
system("PAUSE");
return 0;
}
顺序查找是按照序列原有顺序对数组进行遍历比较查询的基本查找算法。
对于任意一个序列以及一个给定的信息类软件源码元素,将给定元素与序列中元素依次比较,直到找出与给定关键字相同的元素,或者将序列中的元素与其都比较完为止。
函数实现如下:
int sq_search(keytype keyp[],int n,keytype key){
int i;
for(i=0; i<n; i++)
if(key[i] == key)
return i;//查找成功
return -1;//查找失败
}
上面只是算法实现函数,对于动画部分,自己用moveto,lineto描点划线的方式实现吧。
linux系统管理命令shutdown源码linux系统管理命令
linux系统管理--htop命令的使用?1、Htop是一个非常高级的交互式的实时linux进程监控工具。它和top命令十分相似,但是它具有更丰富的特性,例如用户可以友好地管理进程,快捷键,垂直和水平方式显示进程等等。Htop是一个第三方工具,它不包含在linux系统中,你需要使用YUM包管理工具去安装它。
2、CentOS安装htop
#yum-yinstallhtop
3、截图
如何在linux上用命令实现用户和组的管理?
Linux上用命令实现本地用户和组的管理
本地用户和组:管理文件和进程等等
本地用户和组:
1)root:超级管理员系统创建的第一个账户
特点:
id为:0
家目录:/root
具有系统的完全控制权:小心使用。
#id
uid=0(root)gid=0(root)groups=0(root)context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c
#
2)普通用户:不具有管理员权限
特点:
id范围:
=id=
家目录:/home/用户名
#idstudent
uid=(student)gid=(student)groups=(student),(wheel)
#
3)服务用户:为服务提供权限
特点:
id范围:
0id
家目录:应用程序服务目录
#idapache
uid=(apache)gid=(apache)groups=(apache)
#
如果是yum,rpm安装的软件:由rpm包中的脚本创建服务账户
Includeconf.modules.d/*.conf
#
#Ifyouwish/lin...)
我这里已docker-...tgz该版本做演示
1.下载源码包文件到本地
2.通过远程连接工具(xShell、SecureCRT等将源码包文件上载到服务器自定义目录)
3.解压文件
4.配置docker为service服务
5.添加可执行权限
注:如遇到启动不成功可通过状态查询、/var/log/messages/运行日志或直接使用dockerd命令查看错误信息,如还解决不了建议服务器重启一下在运行docker启动命令
6.配置镜像加速
7.检查安装版本内网下载镜像
注:使用docker pull拉取镜像的时候需要网络,但是项目部署一般都是在内网。内网访问不了外网,所以需要在外网环境下把需要的镜像拉取下来打包,然后拷贝到内网,载入到内网的docker
1.在外网机器上拉取mysql镜像,可以看到外网的docker已经拉取了镜像。
2.将镜像打包成tar压缩包
3.将打包好的mysql镜像包通过远程工具下载到本地
4.拷贝到内网linux服务器并载入docker
docker基础命令使用(扩展)下载镜像:(hub.docker.com/search/官网镜像地址)
docker pull [IMAGE_NAME]:[TAG] #命令格式
docker pull mysql:8.0 #下载mysql8.0镜像(不指定默认下载最新版本)
查看当前镜像版本
docker -v #查看当前安装版本
docker version #查看版本信息
docker info #查看系统信息
docker images #查看当前镜像
docker search 镜像名 #搜索镜像
镜像、容器删除
docker rm 容器ID
docker rm 容器名字
docker rmi 镜像ID
docker rmi 镜像名
docker rmi -f 镜像ID #强制删除
创建网络及数据卷
docker volume create +数据卷名称
docker volume list #查看当前数据卷信息
docker network create -d bridge +网络名称
docker network ls #查看当前网络
docker inspect containername +id #查看容器的hash值
启动、关闭容器
docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2) #关闭所有容器
docker start $(docker ps -a | awk '{ print $1}' | tail -n +2) #开启所有容器
杂
docker inspect 容器ID (使用该命令重点关注容器ip) #查看容器/镜像元数据
docker exec #在运行的容器中执行命令
docker exec -it 容器ID /bin/bash #以交互模式开启伪终端