自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 问答 (2)
  • 收藏
  • 关注

原创 第一段Java程序

关键字关键字指的是 Java 系统保留使用的标识符,也就是说,这些标识符只有 Java 系统才能使用,程序员不能使用这样的标识符。true、false 和 null 也都是 Java 中定义的特殊字符,虽然它们不属于关键字,但也不能被用作类名、方法名和变量名等。另外,上表中的 goto 和 const 是两个保留字 (reserved word)。保留字的意思是,Java 现在还未使用这两个单词作为关键字,但可能在未来的 Java 版本中使用这两个单词作为关键字。按照 Java 语法的规定,标识符可以

2020-09-29 03:52:21 300

原创 Why Linux

学习编程最有效的方法莫过于:写代码 -->> 思考 -->> 总结Windows 可能给了你电脑启蒙,但在计算机世界里,Linux 的地位比 Windows 更加重要,没有 Linux 就没有现在的互联网生态。迄今为止,80% 以上的智能手机,都使用着基于 Linux 内核的 Android 系统;全球排名前 500 的超级计算机中,98% 在用 Linux;绝大部分你所使用的互联网产品,也都运行在 Linux 系统的服务器上……与 Windows 相比,Linux 可能没那么

2020-09-24 17:36:21 166

原创 计算机基础和开发入门

计算机(Computer)是一种能按照某些预定的程序(这些程序往往体现的是人类的意志)对输入到其中的信息进行处理,并将处理结果输出的高度自动化的电子设备。中央处理器(Central Processing Unit,CPU)是一块超大规模的集成电路,通常是一台计算机的运算核心和控制核心,主要包括算术和逻辑单元(Arithmetic and Logic Unit,ALU)和控制器(Control Unit,CU)两大部件。此外,还包括若干个寄存器和存储器,以及用于实现它们之间联系的数据、控制及状态总线。CPU

2020-09-24 16:31:08 818

原创 字符型指针变量

#include <stdio.h> main(){ char *p = {"China"}; printf("%c",*p);}结果 C{ }并没有影响啊#include <stdio.h> main(){ char *p = "China"; printf("%c",*p);}结果 C“China” -> {‘C’,‘h’,‘i’,‘n’,‘a’}...

2020-08-13 09:36:59 658

原创 元素移动次数计数和静态链表

0位置之前 插入 要移动n个元素后面位置插入 比前面位置少移动一个于是推出了i位置之前插入 要移动n-i个元素这个也是同理0位置删除 移动n-1个元素i位置删除 移动n-i-1个元素推导总次数为(n-1+0)n/2 = (n-1)n/2平均移动 (n-1)/2####静态对于某种存储结构 其存储空间是一次性分配完毕 就叫静态分配####动态其存储空间是根据需要 多次分配 就叫动态分配之前所学的存储结构顺序存储结构就是 静态分配链式存储结构就是 动态分配###静态链表.

2020-08-12 09:02:49 455

原创 线性表最值问题

找最小值找最大值顺序表求最大值顺序表求最小值带头结点单链表求最大值带头结点单链表求最小值q是 最大值/最小值 的结点的指针当作小工具 熟记“删除” 并没有free要注意的是q所指结点 也就是最大值结点有可能是双链表的最后一个这个时候定义的r 它的值为NULL所以要判断一下当其为NULL的时候 就不需要使r的 llink 指针指向 l 了开头留的另一道题关键就在于定位如何在两个链表中定位出这么两个结点他们到共享结点的距离相同数一下

2020-08-12 09:02:16 451

原创 线性表习题01

由于链表不空 所以 p 和 L 指向 肯定 不同一个结点所以 p != Lp指向终端结点 不管链表空不空 p ->next = L这个选 Dfabs() 取绝对值函数if语句 判断 A[i] 与 B[i] 相等因为是float 类型 小数部分很难完全相等因此相减取绝对值 差小于min(事先宏定义了 一个很小的小数) 从而判断其相等而没有用 ==break的位置 有可能是第一个 A与B 不相等的元素也可能是An或者Bn的位置(超出表的范围)...

2020-08-12 09:01:22 128

原创 线性表两种存储结构的特性对比

考点我们一般的思维是见缝插针图中0~7 有8个元素8-1是7 再加上首尾 是9个空隙第二种是策略是在某个位置上插入元素同时规定 顺序表最后一个元素后面的位置(图中是8)也是一个可插入位置这样就有了9种可插入位置考研大多都是采用第二种方式的描述以位置为参考系的插入方式从写代码的角度 也是第二种也更适合翻译为代码因为位置可以清晰的定义表示而缝隙没有因此以后统一 一下插入操作 以元素位置作为插入目标不要再想以元素缝隙为插入目标###可插入位置 是原本顺序表中所有的位置以及最后

2020-08-12 09:00:44 386

原创 局部变量-全局变量

#include <stdio.h>int a,b;void func(){ a = 100; b = 200;}void func2(){ printf("%d,%d\n",a,b);}main(){ int a=1,b=2; func(); func2(); printf("a=%d,b=%d\n",a,b);}结果是100,200a=1,b=2可见此时全局变量变为100 200但是局部变量屏蔽全局变量 输出的是1 2执行func时因为a=1

2020-08-12 08:59:19 146

原创 分析语句

这个是几个语句#include <stdio.h>#include <stdlib.h>main(){ printf("e"); while(0); printf("r");}也许你会说 两个语句哈哈哈其实是三个语句while();有分号 是控制语句此时打印的是 er当while后面表达式是1时打印e 后程序一直运行 死循环...

2020-08-12 08:57:18 138

原创 %s

#include <stdio.h> main(){ char a[] = "Chinese"; char *p = "China"; printf("%s\n",a+2); }结果 inese%s①要求后面为列地址 如本题的a+2②遇到第一个’\0’则停止#include <stdio.h>#include <string.h>main(){ char a[20] = "ABCDEFGHI"; char *p = "1234567

2020-08-12 08:56:18 181

原创 高位 在前面 底位 在后面

#include <stdio.h>#include <stdlib.h>main(){ union { char i[2]; int k; }a; a.i[0]=2; a.i[1]=0; printf("%d",a.k);}结果 20002 0000 数组中下标小 地址小 下标大 地址大0000是高位 0002是低位0002 低地址0000 高地址高位 在前面 底位 在后面0000 0002数组是连续空间下标小 地址小 放底位

2020-08-12 08:55:31 1501

原创 下列( )与数据的存储结构无关的是

下列( )与数据的存储结构无关的是A栈B双向链表C散列表D线索树E循环队列答案A栈 是逻辑结构 线性表 加了点约束双向链表 链表 就是存储结构的体现散列表 顺序存储结构的扩展线索树 建立在二叉链表的存储结构循环队列 建立在顺序存储结构的队列...

2020-08-12 08:53:57 7151

原创 指针交换三种

#include <stdio.h>void func(int *p1,int *p2);main(){ int a,b; int *p1 = &a,*p2 = &b; scanf("%d%d",p1,p2); func(p1,p2); printf("a=%d,b=%d",a,b);}void func(int *p1,int *p2){ int temp; temp = *p1; *p1 = *p2; *p2 = temp; }输入的

2020-08-12 08:52:45 2492

原创 线性表的归并

归并的含义是将两个或两个以上的有序序列归并为一个有序序列的过程。归并排序的主要思想是:将若干有序序列逐步归并,最终归并为一个有序序列。其中最常见的是二路归并。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Er0Ne8Xn-1597025336790)(https://upload-images.jianshu.io/upload_images/7186975-30216af16cb07a0a.png?imageMogr2/auto-orient/strip%7Cimag

2020-08-10 10:09:47 850

原创 线性表逻辑结构

按元素的特性分类再按元素的不同组织关系分类如一对一、一对多、多对多先强调元素的相同特性再强调元素的不同组织关系上面这些话的意思是不只线性表要强调相同特性图 树等等 都要强调相同特性...

2020-08-10 10:08:46 435

原创 线性表的划分

考研中划分规则特指以某个元素为标准把顺序表中元素分为左右两部分这个标准元素 叫枢轴共三种策略① 第一种 顺序表 以第一个元素为枢轴 将顺序表划为左右两部分左边元素都小于枢轴 右边元素都大于枢轴并且枢轴要夹在左右两部分元素之间++i 使 i 后移当 i 所指元素大于temp(临时元素)时使 j 所指向的 等于 i 所指向元素并使 j 前移重复 i 往右扫描 , j 往左扫描直到 i 和 j 相遇顺序表[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下

2020-08-10 10:07:28 1358

原创 为什么三次异或操作可以交换两个数

a和b是两个整数,经过以下三次异或操作,可以达到交换目的:a = a ^ b;b = a ^ b;a = a ^ b;首先要理解,什么是^(异或)操作:  二进制两数运算结果:  0 ^ 0 = 0  0 ^ 1 = 1  1 ^ 0 = 1  1 ^ 1 = 0相同为0,不同为1假设:a = 10 , 其二进制数为: 1010b = 12 , 其二进制数为: 1100如果a和b交换,在二进制数看来,因为第一位和最后一位数相同,所以中间两位数只要交换一下就行了这个交换的过程,因

2020-08-10 10:06:06 403

原创 0.1 + 0.2 不等于 0.3

>>> 0.1+0.20.30000000000000004>>> >>> 0.1+0.2 == 0.3False>>> round(0.1+0.2,1) == 0.3True>>> 这个问题叫做 不确定尾数问题不是只在python中存在 在很多编程语言中都存在它涉及到了计算机对数字运算的内部实现原理浮点数间运算存在不确定尾数,不是Bug在计算机中所有数字都是由2进制表示严格来说 53位二进

2020-08-10 09:57:35 164

原创 线性表两种建表方法

顺序表建表数组作为顺序表的载体length描述顺序表的长度#include <iostream>using namespace std;int maxSize=10;int length;int createList(int A[],int &length){ cin>>length; if(length>maxSize) return 0; for(int i=0;i<length;i++) cin>>A[i];

2020-08-10 09:24:50 490

原创 线性表元素插入和删除

单链表(链式存储结构)插入单链表(链式存储结构)删除有头结点的单链表在开始结点前插入元素等同在头结点后插入元素不含头结点的单链表在开始结点前插入元素s->next = head;head = s;因此含有头结点的单链表比不含头结点的单链表在操作上简单就是因为含有头结点的单链表在任何位置上插入新元素都是统一的操作而不含有头结点的单链表需要分两种情况讨论多了一些麻烦含有头结点单链表的删除不含头结点单链表的删除双链表的结点插入首先必须要先保存p->nex

2020-08-10 09:24:01 1591

原创 算法的常数级--对数级-线性级

当重复执行的次数,就是问题的规模很大的时候就有很大区别了.最好的算法就是常数阶的.无论问题规模多大执行时间不变.对数阶就是 log a N .执行时间随执行次数呈对数增长线性阶的次之.执行时间随问题规模增长呈正比例增长运行时间随着问题规模增大的增长速度:指数级别 > 立方级别 > 平方级别 >> 线性对数级别 > 线性级别 >> 对数级别 > 常数级别对数的底数和增长的数量级无关(因为不同的底数仅相当于一个常数因子),所以我们在说明对数级别时一般使用

2020-08-10 09:22:38 3604

原创 结构体 共用体变量直接相互赋值

#include <stdio.h>#include <stdlib.h>#include <string.h>main(){ struct node { int data; char ddd[10]; }; struct node aaa= {1,"abcdef"}; struct node bbb; bbb = aaa; printf("%s\n",aaa.ddd); aaa.data = 2; strcpy(aaa.ddd,"

2020-08-10 09:21:45 1338

原创 C++库常用函数一览(<string><cctype><algorithm><cmath><cstdlib><iomanip><numeric>)

1.标准C++库字符串类std::string的用法begin 得到指向字符串开头的Iteratorend 得到指向字符串结尾的Iteratorrbegin 得到指向反向字符串开头的Iteratorrend 得到指向反向字符串结尾的Iteratorsize 得到字符串的大小length() 和size函数功能相同max_size 字符串可能的最大大小capacity 在不重新分配内存的情况下,字符串可能的大小e

2020-08-10 09:18:39 315

原创 C 二级指针

#include <stdio.h> main() { int a = 3; int *p = &a; printf("%d,%d\n",p,*p); int **q = &p; printf("%d,%d,%d,%d\n",q,p,*q,*p); printf("%d",**q); }结果6487572,36487560,6487572,6487572,33

2020-08-09 13:03:20 240 1

原创 多维数组-指针

#include <stdio.h>#include <string.h>main(){ int a[][3] = {1,2,3,4,5,6,7,8,9}; printf("%d\n",a[1]+2); printf("%d\n",&a[1][2]);}结果64875566487556#include <stdio.h>#include <string.h>main(){ int a[][3] = {1,2,3,4,5,

2020-08-09 13:02:53 105

原创 标准的c语言不支持二进制数字

2020-08-09 13:00:29 2123

原创 switch执行顺序

#include <stdio.h>#include <stdlib.h>main(){ int a ; printf("请输入a的值"); scanf("%d",&a); switch(a){ case 1: a=111; case 2: a=222; default:a=333; } printf("a=%d",a);}无论输入什么 打印的都是333可见 在没有break的时候 无论是case1 还是case2 都会从上而下 运行

2020-08-09 12:58:57 1302

原创 extern存储类别c c++区别

##区别就是entern后面的数据类型是否可以省略c 两种#include <stdio.h>main(){ extern int a,b; printf("%d,%d",a,b);}int a=3,b=2;结果3,2#include <stdio.h>main(){ extern a,b; printf("%d,%d",a,b);}int a=3,b=2;结果3,2c++ 只有这一种#include <iostream&g

2020-08-09 12:57:05 199

原创 C-scanf

#include <stdio.h>#include <stdlib.h>main(){ int a=4,b=5,c=3; printf("请输入\"a=_,c=_\" "); scanf("a=%d,c=%d",&a,&b); printf("a=%d,b=%d,c=%d",a,b,c);/*此时我输入的是a=1,c=2 输出的结果是a=1,b=2,c=3也即是其实改变的是地址a 地址b的内容值但是用户会误认为值2是给了c 但是其实是给了b

2020-08-09 12:54:10 95

原创 c 从1加到100的四种方法 结果5050

for#include <stdio.h>#include <stdlib.h>main(){ int sum=0; int i=0; for(;i<101;) { sum+=i; i++; } printf("%d",sum);}while#include <stdio.h>#include <stdlib.h>main(){ int sum=0; int i=0; while(i<101)

2020-08-09 12:40:30 6467 1

原创 c变量三属性-类型-作用范围-存储类别

#include <stdio.h>int d=1;//全局变量int func(int p){ static int d = 5;// 局部静态变量 d+=p; printf("%d",d); return d;}main(){ int a = 3; printf("%d",func(a+func(d)));}结果 61515#include <stdio.h>main(){ extern a,b; printf("%d,%d",a,b)

2020-08-09 12:39:01 176

原创 struct 结构体

#include <stdio.h>#include <string.h>main(){ struct aa { int a; char b[15]; }bb; bb.a = 15; //bb.b = "abcde"; strcpy(bb.b,"abcde"); printf("%d\n",bb.a); printf("%s\n",bb.b);}结果15abcde注释的bb.b = “abcde”; 错误 不合法 bb.b是数组名 地址 是

2020-08-09 12:35:00 160

原创 c for

#include <stdio.h>#include <stdlib.h>main(){ int i=1; for(;i<3;) { printf("e\n"); i++; } }exp1可以放上面exp3可以放循环结果打印两次e#include <stdio.h>#include <stdlib.h>main(){ int i=1; for(;;) { printf("%d",i); i++

2020-08-09 12:29:46 117

原创 C++ 指针型变量的引用型定义

#include <iostream>using namespace std;void getResult(int *&p){ int a = 3; int *q = &a; cout<<"q="<<q<<endl; p =q;}int main(){ int *p = NULL; getResult(p); cout<<"result="<<p;}结果q=0x6ffdc4res

2020-08-08 09:59:49 717

原创 C++ 引用 &r

#include <iostream>using namespace std;int getResult(int r){ return ++r;}int main(){ int result = 0; result = getResult(result); cout<<"result="<<result;}结果result=1#include <iostream>using namespace std;void getR

2020-08-08 09:58:49 455

原创 看完就懂 C++ 的命名空间

命名空间是用来组织和重用代码的编译单元。NameSpace(名字空间),是为了解决命名冲突的问题而引入的概念。通过使用 namespace xxx(就是xxx使用的范围),你所使用的库函数或变量就是在该名字空间中定义的,这样一来就不会引起不必要的冲突了。C++标准程序库中的所有标识符都被定义于一个名为std(standard)的namespace中。一 :和<iostream.h>格式不一样,前者没有后缀。两者是两个不同的文件。后缀为.h的头文件c++标准已经明确提出不支持了。因此,当使用&l

2020-08-08 09:58:05 134

原创 C++、C都可以用的定义结构体

#include <iostream>using namespace std;int main() { typedef struct { int num; char f; }S; S s; s.num = 10; s.f = 040; int a = s.num; cout<<"num="<<a;}

2020-08-08 09:57:26 238

原创 操作系统1-5

没有中断技术 就没法实现多道程序并发甚至可以说 没有中断技术 就没有操作系统当CPU拿到特权指令时 它发现此时处于是用户态此时运行的是应用程序于是这个非法事件 会触发中断信号CPU会拒绝执行特权指令并转变为内核态 并且处理中断信号的内核程序指令非法或指令的参数非法 这样发生内中断注意 陷入指令 并不是 特权指令陷入指令在用户态 可以执行中断的作用十分重要它是让cpu从用户态变为内核态的一种唯一的方式它是让操作系统内核强行夺回CPU的控制权的一种方式在引入了中..

2020-08-08 09:53:41 129

原创 操作系统1-4

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GJQ0FBSd-1596851464612)(https://upload-images.jianshu.io/upload_images/7186975-721065ad75af2046.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]...

2020-08-08 09:51:31 114

空空如也

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

TA关注的人

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