自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【java】判断一棵树是否是完全二叉树

二叉树是数据结构中很重要的部分,本文主要是介绍一下如何判断一个是完全二叉树。判断完全二叉树是建立在树的层序遍历的基础上,如果对层序遍历不太掌握,可以看一下我的另一篇博客:Java–完全二叉树、普通二叉树的创建以及树的前序、中序、后序、层序遍历的递归和非递归方法实现复习一下:完全二叉树的特点:1.叶子节点只出现在最下面两层2.最下层的叶子一定集中在左部连续位置3.倒数第二层若有叶子节点...

2019-07-24 15:47:56 1768

原创 【网络基础】图解UDP、TCP、IP数据报的首部格式以及其各个组成的含义

本文主要是将UDP、TCP以及IP数据报的首部以图片的形式展示出来,并对其首部中的各个组成进行简述。首先,在TCP/IP体系中,网络层为主机之间提供逻辑上的通信,而传输层为应用进程之间提供端到端的逻辑通信(这两层遵循的协议不一样,很重要)。传输控制协议TCP和用户数据报协议UDP都是位于TCP/IP体系中的传输层,(其实UDP和TCP就是给在传输层上的通信的两个进程之间规定了一种协议)如下图所示...

2019-07-24 11:27:40 2893

原创 Java--完全二叉树、普通二叉树的创建以及树的前序、中序、后序、层序遍历的递归和非递归方法实现

在看这篇博客前,一定要对二叉树的基本概念、性质以及递归有一定的了解,否则可能会。。。。首先在这里要复习一下二叉树的概念,由于普通的二叉树和完全二叉树的创建方法不同,所以需要掌握这两种二叉树的特点和不同。二叉树定义:一棵二叉树是结点的一个有限集合,该集合或者为空,或者是由一个根节点加上两棵分别称为左子树和右子树的二叉树组成。二叉树的特点:每个结点最多有两棵子树,即二叉树不存在度大于2的结点...

2019-07-22 19:02:13 399

原创 【java】普通代码块、构造块、静态代码块的区别以及在继承关系中的使用

代码块定义:使用"{}"定义的一段代码根据代码块定义的位置以及关键字,又可分为以下四种:普通代码块构造快静态块同步代码块(多线程中,本文不作介绍)一、普通代码块定义在方法中的代码块public class javaTest { public static void main(String[] args) { { int x = 1...

2019-07-21 10:43:07 213

原创 C语言重要知识点总结(四)--结构体、结构体内存对齐、位段、枚举、联合

一、结构体结构体:将不同类型的数据存放在一起,作为一个整体进行处理(有时候将结构体声明叫做模板,以为它勾勒出数据该如何存储,并没有实例化数据对象)struct 结构体名{ 成员变量1; 成员变量2; . . .};分号表示结构体定义结束此时只是告诉编译器该如何表示数据,并未分配空间struct Student{ char name[10]; int age;};s...

2019-07-20 21:15:14 371

原创 C语言重要知识点总结(三)--const、volatile、extern、static、restrict、register关键字解析

一、constC语言中关键字const用来定义一个常量,如果一个变量被const修饰,那么它的值就不能再改变,只能被读取。(一)const修饰局部变量时**const int num = 10;int const num = 10;上述两种对变量num的定义都是正确的,此时不能再重新给num赋值,num成为一个只读变量。如果强制给num重新赋值,会出现程序错误。(二)const与指针...

2019-07-20 21:15:02 478

原创 C语言重要知识点总结(二)--内存结构、函数调用过程(栈帧)、宏的优缺点以及##和#的使用

一、内存结构内存大致可以分为四个部分:代码段,静态存储区,堆,栈。具体划分如下图所示:栈:在执行函数时,函数内部局部变量的存储单元都可以在栈上创建,函数执行结束后会自动释放内存。栈内存的分配运算内置于处理器的指令中。效率高,但分配的内存容量有限,程序发生错误时,很有可能出现栈溢出。堆:又称为动态内存分配区,程序在执行的时候用malloc或new申请指定大小的内存,程序员自己负责在任何时候...

2019-07-20 21:14:45 401

原创 C语言重要知识点总结(一)--编译链接过程、数据类型、操作符

一、C语言的数据类型C语言的数据类型分为基本类型,构造类型,指针类型,空类型,逻辑型,复数型。(本篇文章只介绍基本类型,其余数据类型的详细描述在其他博客中,本文末尾附有链接。)(一)基本类型基本类型包括数值类型和字符类型关于基本类型有以下需要注意的几个点:1.整型提升如果int能够表示原始数据类型中的所有值,那么这个值就会被转为int型,否则它将被转为unsigned int型。只有i...

2019-07-20 21:14:29 235

原创 求一个整数在内存以二进制的形式存储时1的个数

我们知道,计算机中任何整数都是以二进制补码的形式存储,下面的程序用来计算整数在存储时,二进制中1的个数。(以下代码以32位系统为例)第一种方法#include <stdio.h>int main(){ int num = 7; int count = 0; while(num) { //通过不断%2的操作计算出二进制中每一位的数字,与1比较 if(num%...

2019-02-12 17:02:14 363

原创 【菜鸟学习】解析Java 中三个特殊的类--String类(StringBuffer类),Object类,包装类

一. String类Java中没有内置的字符串类型,而是在标准的Java类库中提供了一个预定义类,类名叫String。实际上,每一个用双引号括起来的字符串都是String类的一个实例。下面介绍String类的两种实例化方式:直接赋值String str = “Hello World!”;System.out.println(str);...

2018-11-15 21:38:56 270

空空如也

空空如也

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

TA关注的人

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