自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 VMWare虚拟机Ubantu20.10添加中文智能拼音输入法

VMWare虚拟机Ubantu20.10添加中文智能拼音输入法1.安装ibus-libpinyin1.sudo apt install ibus-libpinyin 2.sudo apt install ibus-clutter2.安装完成后,进入 设置–>输入源 点击“+” ,选择Chinese->Intelligent pinyin->add然后在这里可以切换输入法,或者按win+space快捷键切换参考文章...

2021-04-22 19:45:47 4536 2

原创 connect to host xxx.xxx.xxx.xxx port 22: Connection refused

connect to host xxx.xxx.xxx.xxx port 22: Connection refused问题:win10使用ssh远程登录VMWare虚拟机上安装的Ubantu系统时连接不上win10已经内置了ssh,因此可以在终端进行操作,但在首次操作时出现下面的问题:ssh: connect to host xxx.xxx.xxx.xxx port 22: Connection refused解决方法:第一次使用Ubantu时,先在U版图终端中安装net-toolssudo

2021-04-22 19:16:39 1011

原创 指针重温(1)——static关键字

static用于表示链接属性还是存储类型?1、当用于函数定义或代码块之外的变量声明时:用于修改标识符的链接属性(从external改为internal),存储类型(静态存储)和作用域(当前源文件)没有发生改变;2、当用于代码块之内的变量声明时:用于修改变量的存储类型,从自动变量修改为静态变量,但变量的链接属性(none)和作用域(代码块)没有发生改变;【来源于书籍《C和指针》】...

2020-07-07 00:07:12 144

转载 字符串中的查找与替换

字符串中的查找与替换文章转载自:https://blog.csdn.net/bufanq/article/details/51567454常用字处理软件或者编辑器都提供字符串的查找和替换功能,本文描述如何借助C语言的字符串处理函数来实现字符串的查找和替换功能。先说查找,字符串的查找主要使用strstr函数,其原型为:char * strstr(char * str1, char * str2),函数的功能是在str1中查找str2,如果str2是str1的子串,则返回str2在str1中第一次出现的位

2020-06-27 16:02:23 5173

原创 菜鸡笔记值——插值查找

菜鸡笔记之——插值查找插值查找:插值查找是二分查找的另一种改进,二分查找的分割点是每一段的中点,斐波那契查找的分割点是黄金分割点,而插值查找也有它独特的分割方式。二分查找或斐波那契查找每次分割都是按照固定的规则分割下去,或者说他们每次分割后的两段的比例是一样的,这样没有办法根据查找值target来调整每次分割后的比例,算法科学家提出一种新方法:二分查找的分割点为mid = (high+low)/2,也可以写成mid = low + (high-mid)*(1/2),将这个(1/2)改写为(target

2020-06-27 15:10:47 105

原创 菜鸡笔记之——斐波那契查找

菜鸡笔记之——斐波那契查找斐波那契查找:前提:查找的序列必须已经排好序,并且数据个数为fib[k]-1个(若不足fib[k]-1个需手动扩充序列)斐波那契查找类似于二分查找,但与二分查找不同的是分割点不同,二分查找每次以(high+low)/2作为分割点,而斐波那契查找每次以黄金分割点作为分割位置。思路:一开始将目标值target与第F(k-1)位置的记录进行比较(即mid=low+F(k-1)),比较结果分为三种:相等,mid位置的元素即为所求,直接返回mid;target>array

2020-06-26 17:32:53 115

原创 菜鸡笔记之——分块查找

菜鸡笔记之——分块查找+注释练习分块查找:前提:整个线性表可以无序,但要求分块有序,比如由一组数据:1,3,2,6,9,8,13,15,19,32数据整体无序,但如果将其分为四组(1,3,2),(6,9,8),(13,15,19),(32),就能保证前一块的最大值比后一块中的任意一个值小,这称为分块有序,每一组叫做一个“块”,而每一块的最大值记为key,用key来当作查找块的索引,因此分块查找也叫做索引查找,分块查找要求分块有序使其有较大的局限性。思路:根据块的key值检索待查找的数在哪一块中(

2020-06-26 12:09:52 179

转载 C语言注释

C语言编程规范-注释规则:1、一般情况下,源程序有效注释量必须在20%以上。说明:注释的原则是有助于对程序的 阅读理解,在该加的地方都加了,注释不宜太多也不能太少,注释语言必须准确、易懂、简洁。2、说明性文件(如头文件.h文件、.inc文 件、.def文件、编译说明文件.cfg等)头部应进行注释,注释必须列出:版权说明、版本号、生成日期、作者、内容、功能、与其它文件的关系、修改日志 等,头文件的注释中还应有函数功能简要说明。示例:下面这段头文件的头注释比较标准,当然,并不局限于此格式,但上

2020-06-26 00:17:42 1776

原创 菜鸡笔记之——二分查找

菜鸡笔记之——二分查找+文件操作二分查找:前提是所有数据都已经排好序,将目标值每次跟中间的数mid比较,如果相等可以直接返回,如果比mid大则继续查找大的一边,否则继续查找小的一边。代码实现(二分查找+读取文件):文件arctan.txt存放arctan(i)的值,i = 1,2,3,…360,输入一个arctani 的值查出i为多少。# include <stdio.h># include <stdlib.h># include <math.h># de

2020-06-24 14:08:06 127

原创 菜鸡笔记之——顺序查找

菜鸡笔记之——顺序查找顺序查找:待查找数据与数据组的元素一一比较,找得到输出该数的位置,找不到输出错误提示信息,顺序查找比较简单,但执行效率不高。代码实现(顺序查找):# include <stdio.h>int main(void){ int a[100]; int N,i,search_number; printf("the number of the array(less than 100):"); scanf("%d",&N);

2020-06-24 12:14:17 110

转载 getch getche 和 getchar

转载自:https://blog.csdn.net/cxyol/article/details/628324 getch getche 和 getchar   今天同学问我一个问题,.Net上编译C程序最后的结果总是一闪而过。记得有个函数能够实现其功能,于是分不清这几个函数之间的关系,总结一下。1.输入输出缓

2020-06-21 17:05:43 267

原创 菜鸡笔记之——基数排序

菜鸡笔记之——基数排序基数排序:先按照每一个元素的个位的大小对所有数进行排序,再按照每一个元素的十位的大小进行排序,以此类推,直到最高位。参考文章代码实现(基数排序):# include <stdio.h># include <malloc.h># include <string.h># include <math.h>int main(void){ int N; printf("the length of the arr

2020-06-21 12:58:34 113

原创 菜鸡笔记之——桶排序

菜鸡笔记之——桶排序桶排序:桶排序可以理解为简化版的计数排序,自然地限制条件就更多,适用范围更窄,原理跟计数排序类似,而且比较简单;桶排序大概比较适合于元素为正整数,且最大值不太大地情形,而计数排序还适用于整数(可含负整数),跨度不太大的情形,两者都不适用于字符串排序。时间复杂度:O(n+k);代码实现(桶排序):# include <stdio.h># include <malloc.h># include <string.h>int main(vo

2020-06-21 00:05:38 148

原创 菜鸡笔记之——计数排序

菜鸡笔记之——计数排序计数排序:计数排序是非比较排序,它是分布排序,其时间复杂度可以突破nlogn达到O(n),但是其适用范围相对较小,不适合字符串比较,不适合数据跨度较大的数组的排序。时间复杂度:O(n);稳定性:稳定排序;思路:1、开一个与原始数组一样大的数组result,用于排序后储存结果;2、开一个临时数组temp,其长度的原始数组元素中的最大值减最小值加1,用于统计原始数组中各个元素出现的次数;(出现多少次,temp[a[i]]就自增多少次,这里有一个问题:a[i]可能为负数,可以通

2020-06-20 17:34:57 129

原创 菜鸡笔记之——归并排序

菜鸡笔记之——归并排序归并排序:将数据一步步细分,对每一部分进行排序,在将各个部分合起来排序;代码实现(归并排序):# include <stdio.h># include <string.h># include <malloc.h>int main(void){ int N; printf("the number of the array:"); scanf("%d",&N); int * array = NUL

2020-06-20 11:31:21 117

原创 菜鸡笔记之——希尔排序

菜鸡笔记之——希尔排序希尔排序:时间复杂度:平均O(nlogn);稳定性:不稳定排序;思路:将数据分组,每相隔step(步长),对每一组进行插入排序。希尔排序为插入排序的进一步优化;代码实现(希尔排序):# include <stdio.h># include <malloc.h>int main(void){ int N; printf("the number of the array:"); scanf("%d",&N);

2020-06-19 22:22:08 121

原创 菜鸡笔记之——快速排序

菜鸡笔记之——快速排序快速排序时间复杂度:O(n*logn)(无序情况下),O(n^2)(最坏的情况下)稳定性:不稳定排序快速排序有多种方法,包括:递归快排:左右指针法、前后指针法、挖坑法;非递归快排;快排优化方法:三数取中法;一、递归快排1、左右指针法:思路:(1)取数据组中的一个数为基准数,一般这个数为最左端或最右端的一个数,并同时设置哨兵变量i,j,分别从数据组两头开始检测,j从右端开始,找比基准数小(大)的数,i从左端开始最左端开始,找比基准数大的数,找到后将两数交换,反复进

2020-06-17 20:48:11 156

原创 菜鸡笔记之——插入排序

菜鸡笔记之——插入排序插入排序可分为:直接插入排序、折半插入排序一、直接插入排序时间复杂度为O(n^2)思路(以从小到大排序为例):1、给定一组数据,只看第一个元素,认为已经排好序;(一个数可以看成排 好序,这没的说)2、看a[0]与a[1]的大小关系,并把a[1]赋给临时变量temp,如果a[0]大于a[1],将a[0]的值赋给a[1](相当于把a[0]往右挪一个位置),然后把temp插入到第一个位置,否则不动;3、看第i个数与第前面已排序的各个数的大小关系,并把第i个数赋给临时

2020-06-13 17:51:38 106

原创 调用malloc函数但不包含mallco或stdlib头文件时出现隐式函数声明警告提示

调用malloc函数但不包含<mallco.h>或<stdlib.h>时出现隐式函数声明警告提示没有包含头文件时使用malloc出现的问题在遇到动态内存分配时发现使用malloc函数时忘记把头文件带进来,但编译后没有出现错误提示,直接运行也没问题,但会出现警告提示信息(一大堆英文…),在博客搜索后大部分回答都是说是隐式函数声明问题,把头文件加进来就可以了,出于好奇我就重新搜索了一下什么是隐式函数声明,结果还是那些文章。。。于是我又去其他网站搜索,把一些零零散散的知识点结合起来,分

2020-06-12 17:19:35 3391 1

空空如也

空空如也

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

TA关注的人

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