运维高级-day01
shell回顾
1、快速生成版权控制信息,具体的内容自己替换
[root@ scripts]# cat ~/.vimrc
autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()"
func SetTitle()
if expand("%:e") == 'sh'
call setline(1,"#!/bin/bash")
call setline(2,
"##############################################################")
call setline(3, "# File Name: ".expand("%"))
call setline(4, "# Version: V1.0")
call setline(5, "# Author: kongd")
call setline(6, "# Email: kongd@163.com")
call setline(7, "# Organization: http://www.cnblogs.com/kongd/")
call setline(8, "# Created Time : ".strftime("%F %T"))
call setline(9, "# Description:")
call setline(10,
"##############################################################")
call setline(11, "")
endif
endfunc
2、题型复习
案例一:输入网卡的名字,来输出网卡的IP
-
问题:参数后判断要加“”名字为空时显示ip
-
分析:把本机的所有网卡名列出来,来引导用户输入。使用命令列出所有网卡信息:
ifconfig/ip a设计一个函数,把网卡名作为参数,函数返回网卡的IP
在获取某个网卡IP时,考虑网卡有多个IP地址(或为空IP的网卡)
-
流程图:

-
实现:

-
实现解析:
-
) grep awk,反复运行和推敲命令,来分析执行结果
-
) 死循环。当输入错误或者为空,继续输入–>输入正确。
-
) while循环continue、break(逻辑性) 逻辑判断参数
-
) get_ip函数调用
-
-
结果验证

案例二:提示用户输入年份后判断该年是否为闰年
-
问题:判断闰年
-
分析
-
提示用户输入年份
-
判断用户输入年份
-
考虑用户输入年份是否为空(或是否为数字)
-
输入为数字时,进行计算
-
被四整除 但不能被 一百整除的是闰年,或者能被四百整除的是闰年
-
-
流程图:

-
实现:

-
实现解析:
-
用户输入为非数字时,提示输入不准确,退出
-
用户输入是数字时,判断是否是闰年
-
-
结果验证
案例三:求水仙花数
"水仙花数"是指一个三位数, 其各位数字立方和等于该数 本身。例如:153是一个"水仙花数", 因为153=1的三次方+5的三次方+3的三次方。

案例四:鸡兔同笼
一只笼子里有好多鸡和兔子,看头数有35只头,看腿有94只腿,问各有鸡和兔多少只?

案例五:一元钱
把一元钱换成一分,二分,五分硬币(每种至少用一枚),问有多少种换法?并且把每种换法输出
分析:
1、一分钱范围:x: 最小1,最大为100-2-5=93
2、二分钱范围:y: 最小1,最大(100-1-5)/2=47
3、五分钱范围z: 最新1,最大(100-1-2)/5=19
三层循环解决问题:

案例六:素数判断
判断 101-200 之间有多少个素数,并输出在此范围内的所有素数。
分析:素数(质数):只能被1和其本身整除的整数
判断素数的方法:用一个数分别去除以 2 到这个数的平方根(sqrt)。如果能被整除,则表明此数不是素数,反之是素数。
思路:本题目有两个所求的目标,一为 101-200 之内的素数个数,二为输出所有素数。


案例七:大小排序
题目输入三个整数 x、y、z,请把这三个数由小到大输出。
程序分析从三个数中分别比较某两个数,将大的数换到后面。

c语言函数交换数据

案例八:猴子吃桃
题目猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少个桃子?
程序分析采取逆向思维的方法,从后往前推断,列出通项公式。
思路通过题干我们可以得到基本信息是若有 n 个桃子,第一天则吃了 n/2 + 1 个桃子,即剩下 n/2 - 1 个桃子。若假设某一天剩下的桃子数为 x,前一天剩下的桃子数为 y,根据上面的关系我们可以得到:( x + 1 ) ∗ 2 = y
简单计算一下,我们已知最后一天剩 1 个,根据推算的公式可以得到倒数第二天剩下 4 个,同理根据递归算法即可求出第一天剩下多少个。在这里需要注意的是,猴子是到第十天想吃(还没吃)的时候发现只剩一个了,所以循环的次数要注意是 9 次。循环递归计算之后输出结果即可。若想查看每天的结果也可输出查看

c语言递归实现

案例九:打印菱形
题目打印出如下图案(菱形)
程序分析先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层控制行,第二层控制列。我们要决定每一层循环的次数:外层不必多说是 4 次(i = 4)内层空格部分,空格数是随着行数的增加而减少的,规律为行数 + 1,空格数 - 1,所以循环次数是从 0到 (4 - i)次。内层星号部分,星号数是随着行数的增加而增加的,规律为行数 + 1,星号数 + 2,所以循环次数是从 0到 (i * 2)次。下三行同理,注意循环的次数和初始值即可。

案例十:冒泡排序
题目任意输入 10 个数,并对这 10 个数进行从小到大的排序。
程序分析对于这种数字排序问题,我们一般用冒泡排序的方法来进行排序。
思路首先我们应该知道什么是冒泡排序,冒泡排序是依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这里我们需要分别以每个数为基准和其他的数依次进行比较,所以要用双重 for 循环,外层控制被比较的数,内层循环控制轮换比较数。由于要从小到大排序,判断条件是第一层的数若大于第二层的数,则将两个数交换。


相关文章:
运维高级-day01
shell回顾 1、快速生成版权控制信息,具体的内容自己替换 [root scripts]# cat ~/.vimrc autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()" func SetTitle() if expand("%:e") sh call setline(1,"#!/bin/bash")…...
含分布式电源的配电网可靠性评估matlab程序
微❤关注“电气仔推送”获得资料(专享优惠) 参考文献: 基于仿射最小路法的含分布式电源配电网可靠性分析——熊小萍 主要内容: 通过概率模型和时序模型分别进行建模,实现基于概率模型最小路法的含分布式电源配电网…...
k8s docker总结特殊点
k8s docker总结特殊点 前言一、docker 的驱动。1、cgroup:(Control Groups)2、日志驱动(log driver)3、存储驱动4、网络驱动: 二、k8s中网络插件(常用calico,次flannel)**Flannel:**…...
区块链技术与应用 【全国职业院校技能大赛国赛题目解析】第四套区块链应用后端开发
第四套区块链应用后端开发 环境 : ubuntu20 fisco : 2.8.0 springboot 2.1.1 fisco-java-sdk: 2.7.2 maven 3.8.8 前言 这套后端样题,只涉及调用fisco的系统接口,不涉及此食品溯源项目的业务接口,所以我就直接生成一个springboot项目进行完成此题目。 请提前准备好一…...
《向量数据库指南》——向量数据库Milvus Cloud搭建Excel公式编辑器助手
引言 在日常工作中,Excel是我们经常使用的办公工具,而熟练应用Excel公式对于提高工作效率非常重要。然而,有时候我们会遇到一些复杂的需求,需要用到较为专业的Excel公式,而这正是Excel公式编辑器助手的用武之地。本文将介绍如何利用向量数据库Milvus Cloud搭建GPT大模型和…...
qgis添加arcgis的FeatureServer
左侧浏览器-ArcGIS要素服务器-新建连接 http://sampleserver6.arcgisonline.com/arcgis/rest/services/ 展开-双击即可...
java进阶---多态
多态的概述 什么是多态 同一个对象,在不同时刻表现出来的不同形态 多态的前提 要有继承或实现关系要有方法的重写要有父类引用指向子类对象 多态的具体实现 对象的多态是多态的核心和重点 规则: 一个对象的编译类型与运行类型可以不一致编译类型在定义对象时,就确定了,…...
常用脚本-持续更新(文件重命名、视频抽帧、拆帧、删除冗余文件、yolo2xml、转换图片格式、修改xml)
所有代码位置:Learning-Notebook-Codes/Python/常用脚本 1. 文件重命名 脚本路径:codes/files_rename.py脚本说明:可以自动重命名某个文件夹下指定类型的文件。 修改前文件名称: img1.jpg修改后文件名称: Le0v1n-20231123-X-0001.jpg imp…...
百度文心一言(千帆大模型)聊天API使用指导
开篇不得不吐槽下百度,百度智能云平台首页跳转千帆大模型平台的按钮太多了,不同按钮跳转不同的子页面,不熟悉的,能把人找懵。入口太多,就导致用户不知道从何开始。本文就从一个前端开发人员的角度,教大家快…...
C++知识点总结(7):玩转高精度除法
一、复习高低精度 一个数分为两种类型: 1. 高精度数,即一个长度特别长的数,使用 long long 也无法存储的一类数字。 2. 低精度数,即一个普通的数,可以使用 long long 来存储。 由于高精度除法比较简单,…...
LeetCode算法题解(动态规划,背包问题)|LeetCode1049. 最后一块石头的重量 II、LeetCode494. 目标和
一、LeetCode1049. 最后一块石头的重量 II 题目链接:1049. 最后一块石头的重量 II 题目描述: 有一堆石头,用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。 每一回合,从中选出任意两块石头,然后将…...
使用Pytorch从零开始构建LSTM
长短期记忆(LSTM)网络已被广泛用于解决各种顺序任务。让我们了解这些网络如何工作以及如何实施它们。 就像我们一样,循环神经网络(RNN)也可能很健忘。这种与短期记忆的斗争导致 RNN 在大多数任务中失去有效性。不过&a…...
qRT-PCR相对定量计算详解qPCR相对定量计算方式——2^-(∆∆Ct) deta t
做完转录组分析之后,一般都要求做qRT-PCR来验证二代测序得到的转录本表达是否可靠。荧光定量PCR是一种相对表达定量的方法,他的计算方法有很多,常用的相对定量数据分析方法有双标曲线法,ΔCt法,2^-ΔΔCt法(Livak法)&a…...
BART non-Cartesian 重建:并行成像 压缩感知
本文主要使用并行成像和压缩感知方法实现non-Cartesian MRI 数据的重建。 目录 1 自定义MRI kspace trajectory 2 自定义该 trajectory下的多通道MRI数据 3 使用NUFFT 直接做欠采样数据的重建...
UDP客户端使用connect与UDP服务器使用send函数和recv函数收发数据
服务器代码编译运行 服务器udpconnectToServer.c的代码如下: #include<stdio.h> #include<stdlib.h> #include<string.h> #include<unistd.h> #include<arpa/inet.h> #include<sys/socket.h> #include<errno.h> #inclu…...
SLAM ORB-SLAM2(9)闭环检测器
SLAM ORB-SLAM2(9)闭环检测器 1. LoopClosing2. 成员变量2.1. 系统成员变量2.2. 关键帧2.3. 共视关系2.4. 闭环检测2.5. 全局 BA(光束法平差)2.6. 其他操作3. 成员函数3.1. 构造函数3.2. 主要函数3.3. 更新操作3.4. 标识设置和查询接口1. LoopClosing 在《SLAM ORB-SLAM2(…...
目标检测YOLO系列从入门到精通技术详解100篇-【目标检测】SLAM(基础篇)(二)
目录 知识储备 概率论基础 边缘概率 联合概率和独立 独立与条件独立...
TikTok 将开源“云中和”边缘加速器
“从某种意义上说,我们正在努力破解云的骨干网,以造福于我们,”TikTok产品管理基础设施经理Vikram Siwach指出,他解释了该公司即将开源的“全球服务加速器”的好处,这是一个可编程的边缘平台,可将应用程序需…...
【通讯协议】REST API vs GraphQL
在API设计方面,REST和GraphQL各有缺点。下图显示了 REST 和 GraphQL 之间的快速比较。 REST 使用标准 HTTP 方法(如 GET、POST、PUT、DELETE)进行 CRUD 操作。当您需要在单独的服务/应用程序之间提供简单、统一的接口时,效果很好…...
Linux在安装epel-release时,报错epel-release-7-14.noarch.rpm 的公钥尚未安装
Linux在安装epel-release时报错: [rootXWDBDEV01 ~]# yum install epel-release 已加载插件:fastestmirror, langpacks, product-id, search-disabled-repos, subscription-managerThis system is not registered with an entitlement server. You can …...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...
在Ubuntu24上采用Wine打开SourceInsight
1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...
JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...
Python Ovito统计金刚石结构数量
大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...
纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join
纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...
接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)
前言: 双亲委派机制对于面试这块来说非常重要,在实际开发中也是经常遇见需要打破双亲委派的需求,今天我们一起来探索一下什么是双亲委派机制,在此之前我们先介绍一下类的加载器。 目录 编辑 前言: 类加载器 1. …...
