自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 go语言工具_Concurrent Map

Concurrent Map背景map是平时项目中经常用到的数据类型,但是如果

2021-06-18 16:52:19 813

原创 go语言工具_easyjson

easyjson背景:目前后端与前端交互大部分使用的json格式。如果使用go语言自带的json库,使用的是反射,而go语言中反射性能较低。easyjson就是一个比较好的解决方案。安装easyjson在cmd中输入go get -u github.com/mailru/easyjson/...安装完毕后,GOPATH里就有easyjson.exe使用easyjson创建一个model文件package modeltype Student struct{ Name string `jso

2021-06-18 10:38:00 1119 1

原创 go语言工具_pprof

pprofpprof 性能监控pprof的粒度比Benchmark更细,一般用于代码调优func TestFib(t *testing.T) { for i := 0; i < 100000; i++ { Fib(20) }}func Fib(n int)int{ if n<2{ return n } return Fib(n-1)+Fib(n-2)}保存文件后,打开cmd,输入命令go test -v -cpuprofile a.out运行完毕后,文件

2021-06-17 17:49:05 283

原创 go语言工具_benchmark

go语言工具_benchmark基准测试基准测试主要通过测试CPU和内存的效率问题,来评估被测试代码的性能,进而找到更好的解决方案。编写一个简单的基准测试func BenchmarkXXXXXX(b *testing.B) { b.ResetTimer() defer b.StopTimer() for idx := 0; idx < b.N; idx++ { //TODO 写入想测试的函数 }}写基准测试的时候,有几个注意事项:1、文件名必须以_test.go结尾。2、

2021-06-16 15:24:08 385

原创 计算机网络第一天------OSI分层

OSI分层名词解释具体分层无法进行网络通信时网络安全和OSI参考模型名词解释OSI:开放式系统互联.把网络通信的工作分为7层,分别是物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。具体分层1、物理层:表面意思,物理设备。包括电压、接口标准、MAC、网线、标准化设备和网费(插了网线记得交网费)。2、数据链路层:数据如何封装,添加物理层地址、MAC。3、网络层:IP地址编码。...

2020-04-14 12:01:12 261

原创 最大子序和,K 次串联后最大子数组之和

题目:最大子序和给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。自己做的结果int fun(int* arr ,int i,int j) //给数组arr的i到j项求和{ int sum=...

2019-09-19 20:22:33 324

原创 Linux中C语言调试

1、确保Linux中有GCC 和GDB。如果没有就安装下 。 sudo apt-get install gcc sudo apt-get install gdb2、编写C文件,确保可编译。(比如:text.c)3、将调试文件text.c从gcc加载进入gdb中。 gcc -g text.c -o a.out4、进入GDB调试器gdb a.out5、调试器常用命令。li...

2019-09-11 09:06:29 1183

原创 邮件去重,相关设置

工作时,主要使用的OUTLOOK邮箱。所以这些操作和设置都基于outlook。1、设置规则后,好几个文件夹都收到相同的邮件,邮件在多个文件夹重复,或者在一个文件夹中有重复。这种情况一般是设置规则时,没有勾选“并且停止处理其他规则”这个选项。2、设置规则后,有新邮件时,右下角没提示,任务栏图标也没变化,都不知道有没有新邮件。这种情况需要在设置规则时,勾选“并且显示桌面通知”这个选项。...

2019-09-05 11:46:17 1496

原创 排序

程序员那些必须掌握的排序算法(上)1、冒泡排序2、选择排序3、插入排序4、希尔排序程序员那些必须掌握的排序算法(下)1、快速排序2、归并排序3、基数排序...

2019-08-28 15:59:13 114

原创 C语言第十三天---------------------文件操作

文件:有限的信息的集合。是计算机的信息存储单位文件的操作步骤:通过如下API将信息写入到文件中(外存中),将文件中的信息读取到电脑中1、打开:FILE* fopen(char* path,&quot;操作方式&quot;) 只读打开:r rb read binary 如果文件路径不存在,则打开失败 只写打开:w wb write binary 如果文件不存在,则重新创建。否则截断...

2019-01-16 18:59:47 187

原创 C语言第十二天------------单向链表

顺序线性表:数组来表达线性表(联系:1:1)缺点:不能扩容,增加和删除麻烦注:在结构中一般有指针来表达联系struct list{ type data; int index;//下标}; ps:其实就是一个数组。。。。。不过逻辑上不是,逻辑和实际物理还是有区别链表:所有元素没有紧挨在一起,但每个元素有联系有方向的链表:单向链表struct node{ data...

2019-01-08 19:54:51 256 1

原创 C语言第十一天--------------------一个用堆区写的学生管理系统

数据存储区:1、动态区。2、静态区。3、堆区(程序员空间):用户通过API(malloc)申请空间,也可以释放(free)空间。申请堆区:void* malloc(size_t) ;申请堆区的长度realloc(void* old,sizet_t)返回值:申请空间首地址,如果为NULL,则申请失败使用堆区:只能指针法释放空间:不能多次释放同一空间free(void*)应用:申...

2019-01-07 20:33:11 168

原创 C语言拼接字符串的三种操作

#include&lt;stdio.h&gt;#include&lt;stdlib.h&gt;#include&lt;string.h&gt;char *join1(char *, char*);void join2(char *, char );char *join3(char *, char);int main(void) {char a[4] = "abc"; // char ...

2018-12-28 20:10:09 60558 1

原创 C语言第十天-------------------一个标准且最简单的栈

栈:元素存取的操作是一种FILO(先进后出/后进先出)的操作,每次进/取栈只能操作一个元素应用:恢复/撤销栈:一口井栈顶:能被操作(进、出)的一端栈底:不能被操作的一端顺序栈:容器是一个数组结构体: typedef int stackType #define N 100 typedef struct Stack { //顺序栈:容器是一个数组 stackType b...

2018-12-27 19:28:09 128

原创 C语言第九天--------一个标准且最简单的队

队列:是一种FIFO(先进先出)结构应用场景:排队,叫号队列物理结构:顺序队列,链式队列; 操作:队尾:只允许进队队头:只允许出队 循环顺序队列:可以解决假满假空现象操作:1、初始化队列:构造空的队列InitQueue2、清空队列:清空队列元素ClearnQueue3、队列长度:求队列的长度QueueLength4、进队:EnQueue5、出队:DeQueue...

2018-12-27 18:57:36 148

原创 C语言第八天----------------结构体与算法结构

结构体:C语言有三大基本类型:整型,字符型,浮点型定义结构体:用户“自定义”新的“数据类型” struct 类型名 { 属性1; 属性2; ...};注:定义结构体类型并不是定了变量,而是注册了一个新的数据类型嵌套结构体:结构体中可以包含结构体struct 类型名{ 属性1 struct 类型 变量名;};定义结构体变量:分配空间struct 类型 变量...

2018-12-27 18:54:35 221

原创 C语言第七天---------------函数指针多态

指针:1、指针与变量的关系 2、指针与数组的关系 (笔试)3、指针与函数的关系:(重难点)1、指针变量与形参 1、指针传实参,指针变量作形参:若某函数要引用调用 2、数组作形参: 1、数组作形参,就是指针变量函数中的值时,作用域不存在,只能通过传递地址进行改变。 2、返回指针类型* 函数名(形参列表){}3、函数指针变量:(重难点:笔试(多态) ) 程序=算法+数...

2018-12-24 20:58:03 354

原创 C语言第6天--------------递归

C语言函数的变量的作用域、生命周期作用域:变量能被引用到的区间 局部变量:在函数内定义的变量 作用域:在函数内 全局变量:在函数名定义的变量 作用域:在整个文件内 注:1、在同一作用域下,不能同名定义 2、引用变量时,局部优先 生命周期:变量空间被分配开始,到空间被分配结束。动态变量:动态的分配(当函数调用开始时分配空间,当函数调用结束时释放空间) [动静态] [...

2018-12-19 20:24:13 216

原创 C语言第五天-----------数组、字符串、二维数组

数组:是一块连续且同类型的存储空间。定义数组:类型 数组[长度];整型数组:int/short/long 数组名[长度];注意: int buf[10]={1,2,3,4,5,6}; sizeof(buf)/sizeof(int)==10 是不确定元素的个数的字符数组:定义: char buf[长度];初始化:在定义同时赋初值char buf[10]={‘a’,‘b’,‘...

2018-12-16 10:11:08 812 1

原创 C语言第四天-------------流程控制与经典练习

指令的执行顺序:冯诺依曼原则(从上往下,逐条执行)流程控制:选择控制:根据某种条件执行最恰当的指令1、if1、单分支:if(condition) //如果condtion的值为非0,则为真。{指令;}2、双分支:if(condition){}else //条件不成立,则执行{}3、多分支:(2条分支以上)if(condition1){}else if(...

2018-12-13 20:18:33 372

原创 C语言第三天--------------字符与字符串

字符常量: ‘a’字符串常量:“多个字符”注:末尾系统会添加一个空字符(结束字符)eg: “abc” 占存储空间4Bytechar ch1[]="abcd";是字符串char ch2[]={'a','b','c','d','\n'};是字符数组,但也可以像ch1一样输出字符串1、输入输出(Input/Output):1、将信息输出到外部设备,从外部设备输入信息到电脑中。1、标准输...

2018-12-13 19:35:02 160

原创 C语言第二天-------基本类型和运算符

程序=算法+数据1、C语言的基本类型(按类型):整型,字符型,浮点型C语言按是否可变:常量,变量1、常量:整型常量:2、变量:可以改变的量加粗样式1、定义变量:申请空间类型 变量名;1、整型变量:short int longshort ashort存储范围:有符号:[-32768,32767]无符号:[0,65535] 2、有无符号:符号:signed 类型 变...

2018-12-11 19:26:04 379

原创 C语言第一天

C语言:是一门强类型(数据类型之分)面向过程的语言注:是以模块(函数(过程))单位,执行的单位程序=算法+数据(java也一样)C语言的数据:1、源文件:存放高级语言的文件后缀名: .c2、程序的入口函数:程序开始的地方(主函数,main)以类型划分:整型,浮点型,字符型按数据是否可变:常量,变量常量: 不可改变的量1、整型常量 : 十进制: 100 [1-9]..[...

2018-12-10 20:38:32 202

原创 计算机语言的发展

语言的发展历史:1、计器语言:计算机能直接识别的语言(0/1组成的代码) 缺点:难以编写与检查错误 优点:计器可以直接识别2、汇编:由特定助记符来替代二进制指令 mov #323、高级语言:用自然语言与机器沟通 C、C++、JAVA、C#、OC、易语言计算机的语言:机器语言(计算机只能识别此语言)gcc编译器编译器:高级语言与机器之间的语言翻译专家。gcc/g++是一...

2018-12-10 20:31:14 239

原创 两个数字交换的三种方法

写代码经常遇到两个数字交换的问题,基本就三种方法交换 a b 的值。1、引入一个中间值int c=a;a=b;b=c;2、利用相加之后相减,好处是不用定义新的变量,不用浪费空间,坏处是a+b的值可能会溢出,还有就是数组中,可能会出问题。a=a+b;b=a-b;a=a-b;3、利用异或运算,效率最快,B格也高,建议使用,不过在数组中也容易出问题a=a^b;b=a...

2018-12-10 19:47:12 2912

原创 Linux的第8天--------递归(函数进阶)

递归:自已调用自己。本质: 1、when从什么时候开始 2、when到什么时候结束 3 what每次递归需要干嘛eg:打印1-1001、从1开始 2到100结束 3每次打印当前数字练习1、打印1-1002、遍历某层文件和子文件 /home百度版老师教学版(体会:很显然老师教学版比百度版简单、代码少、容易理解。这就体现了老师的价值,总有学校让学生自学,能自学,...

2018-12-06 19:54:31 276

原创 Linux的第7天------------函数

函数:(就是一个功能。)定义函数:描述一个功能的过程[function] 函数名(){ command1 ...}注:function 可写可不写调用函数:执行一次函数 函数名 传递实参给函数:函数名 实参1 实参2 实参3 ... 函数中接收实参: $1 $2 $3 $4.... Shell变量 $# 传递...

2018-12-06 19:32:57 131

原创 Linux第六天-------------折半查找算法

数组:是一块同类型连续空间 Shell定义: array=(元素1 元素2 ...) 引用某个元素内容:${数组名[下标]} 下标从0开始 引用所有元素内容:${数组名[@]} 求出数组元素的个数:${#数组名[@]}算法的好坏:时间度:每一条语句占一个时间度空间度:为了完成某个任务所需要的临时空间所占的存储率查找算法:1、在某块元素中查找某元素是否存在。解决方...

2018-12-04 19:07:35 136

原创 Linux第五天--------------Shell命令

注释符:#test比较数值字符串或文件类型的命令字符串: 字符的字符串 “abcd”数值字符串: ”100“字符串:str1 = str2 是否相同str1 != str2 是否不相同检查文件的类型:-b 块设备-c 字符设备-d 是否是文件夹-e 文件是否存在-f 普通文件-r 用户是否具备可读-w 用户是否具备可写-x 用户...

2018-12-03 22:40:56 106

原创 Linux第四天------------Shell命令

Shell:归档,压缩归档:将多个文件打包在一起 tar (归档,解档)归档: tar -cvf ***.tar 文件列表解档: tar -xvf ***.tar1、gzip是GNU组织开发邮的一个压缩的程序后缀: .gz压缩:tar -czf ***.tar.gz 文件列表解压:tar -xzf ***.tar.gzbzip2也是压缩命令,压缩能力更强压缩:...

2018-12-02 19:09:47 230

原创 Linux的第三天-------shell命令

前景提要:Linux的特点: 1、免费开源:系统的开发代码公开。 2、安全稳定; 3、多任务多用户操作系统:同时多个程序运行或多个用户同时登陆使用 4、内核可裁减 ;最小为64KB。Shell命令------用户篇1、用户: 1、超级管理员:root 2、切换用户:su 用户名 3、增加用户:useradd/adduser 用户名(必须在root权限下) 4、...

2018-11-29 19:23:15 140

原创 Linux的第二天-------vi/vim编辑

Linux查看网卡信息:ifconfigwindows查看网卡信息:ipconfig测试是否能与某地址通信:  ping   通信地址vi/vim编辑:   vi   文件名  进入编辑器三大模式  :  插入,命令,底行默认 命令模式               o/O:上一行/下一行               a/A:向右一个字符/向该行的最右侧       ...

2018-11-27 22:03:12 169

原创 Linux的第一天-------shell命令

在终端的一些shell命令:                                     reboot 重启                                     cd(change the current directory to dir)为改变位置                                     mkdir(make dire...

2018-11-26 23:29:12 124

空空如也

空空如也

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

TA关注的人

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