Java
c@lcb
专注技术噶!
展开
-
数据结构和算法之快速排序
原理:(1)首先设定一个分界值,通过该分界值将数组分成左右两部分。(2)将大于或等于分界值的数据放到数组右边,小于分界值的数据放到数组的左边,此时左边部分中各元素都小于或等于分界值,而右边部分中各元素都大于或等于分界值。(3)然后,左边和右边的数据可以独立排序,对于左侧数据数组,又可以取一个分界值,将该部分数据分成左右两部分,同样在左边放置较小值,右边放置较大值。右侧的数组数据也可以做类似处理。(4)重复上述过程,可以看出,这是一个递归定义,通过递归将左侧部分排好序后,再递归排好右侧部分的顺序。当左侧原创 2021-03-26 17:39:51 · 266 阅读 · 0 评论 -
数据结构和算法之归并排序
原理:(1)尽可能的将一组数据拆分成两个元素相等的子组,并对每一个子组继续拆分,直到拆分后的每个子组的元素个数是1为止。(2)将相邻的两个子组进行合并成一个有序的大组。(3)不断的重复步骤2,直到最终只有一个组为止。时间复杂度: O(nlongn)Java代码实现(附测试案例):package day02;public class Merge { //归并所需要的辅助数组 private static Comparable[] assist; //比较v元素是否小于w元原创 2021-03-26 16:15:37 · 240 阅读 · 0 评论 -
数据结构和算法之希尔排序
原理:(1)选定一个 增长量h,按照增长量h作为数据分组的依据,对数据进行分组。(2)对分好组的每一组数据完成插入排序。(3)减小增长量,最小减为1,重复第二步操作。时间复杂度: O(n^2)Java代码实现(附测试案例):package day02;public class Shell { public static void sort(Comparable[] a) { //1.根据数组a的长度,确定增长量h的初始值 int h=1;原创 2021-03-26 10:48:23 · 132 阅读 · 0 评论 -
数据结构和算法之插入排序
原理:(1)把所有的元素分为两组,已经排序和未排序的。(2)找到未排序的组中的第一个元素,向已经排序的组中进行插入。(3)倒叙遍历已经排序的元素,依次和待插入的元素进行比较,直到找到一个元素小于等于待插入元素,那么就把待插入元素放到这个位置,其他的元素向后移一位。时间复杂度为:O(n^2)Java代码实现(附测试案例):package day01;public class Insertion { public static void sort(Comparable[] a) {原创 2021-03-25 20:39:30 · 94 阅读 · 0 评论 -
数据结构和算法之选择排序
选择排序:原理:(1)每一次遍历的过程中,都假定第一个索引处的元素是最小值,和其他索引处的值依次进行比较,如果当前索引处的值大于其他某个索引处的值,则假定其他某个索引处的值为最小值,最后可以找到最小值所在的索引。(2)交换第一个索引处和最小值所在的索引处的值。时间复杂度: O(n^2)Java代码实现(附测试案例):package day01;public class Selection { public static void sort(Comparable[] a) {原创 2021-03-25 17:21:45 · 90 阅读 · 0 评论 -
数据结构和算法之冒泡排序
冒泡排序:(1)比较相邻的元素,如果前一个元素比后一个元素大,就交换这两个元素的位置。(2)对每一对相邻元素做同样的工作,从开始第一对元素到结尾的最后一对元素,最终最后位置的元素就是最大值。时间复杂度:O(n^2)Java代码实现(附测试案例):package day01;public class Bubble { //对数据a中的元素进行排序 public static void sort(Comparable[] a) { for (int i = a.le原创 2021-03-25 16:57:52 · 97 阅读 · 0 评论 -
Java学习笔记:封装的学习
封装:将一些细节信息隐藏起来,对于外界不可见。比如说方法就是一种封装,关键字private也是一种封装。(1)概述:是面向对象的三大特征之一(封装、继承、多态),是面向对象编程语言对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界是无法直接操作的。(2)封装的原则:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。 成员变量private,提供对应的getXxx()或者setXxx()方法。(3)封装的好处:通过方法来控制成员变量的操作原创 2020-12-10 21:04:55 · 177 阅读 · 0 评论 -
Java学习笔记:方法、数组、类的学习
方法的定义方法(method)是将具有独立功能的代码块组织成一个整体,使其具有特殊功能的代码集。 注意:方法必须先创建才可以使用,该过程称为方法定义。方法创建后并不是直接运行的,需要手动使用后才执行,该过程称为方法调用。方法的格式public static void 方法名() {方法体}范例: public static void isEvenNumber() {方法体}注意事项(1)方法名的命名规则和变量一样,使用小驼峰。(2)方法体:也就是大括号当中可以包含任意条语句。原创 2020-12-06 21:03:20 · 117 阅读 · 0 评论 -
Java学习笔记:判断语句、选择语句、循环语句的学习
顺序结构:按顺序执行,根据编写的代码的顺序,从上到下执行。一、判断语句:if语句第一种格式:if(关系表达式){语句体;}执行流程:首先判断关系表达式看结果是true还是false,如果是true就执行语句体,如果是false就不执行语句体。if语句的第二种格式:if(关系表达式){语句体1;}else{语句体2;}执行流程:首先判断关系表达式看结果是true还是false,如果是true就执行语句体1,如果是false就执行语句体2。if语句的第三种格式:if(判断条件1){原创 2020-11-28 17:14:02 · 195 阅读 · 0 评论 -
Java学习笔记:数据类型、运算符、表达式的学习
一、数据类型分类:(1)基本数据类型:整数、浮点数、字符、布尔(2)引用数据类型:类、数组、接口基本数据类型:字节型(byte 1个字节)、短整型(short 2个字节)、整型(int 4个字节)、长整形(long 8个字节)、单精度浮点型(float 4个字节)、双精度浮点型(double 8个字节)、字符型(char 2个字节)、布尔类型(boolean 1个字节)、(程序中int和double是默认的)注意事项:1、字符串是引用数据类型。2、浮点型可能只是一个近似值,而非精确的值原创 2020-11-28 17:03:00 · 353 阅读 · 0 评论 -
Java学习笔记:关键字、标识符、常量、变量的学习。
一、关键字的特点关键字的字母全都小写 常见的代码编辑器有特殊的颜色标记,非常直观。(一般不需要记住全部的关键字,只需要记住常用的即可)关键字:(来源于百度百科)abstract:表明类或者成员方法具有抽象属性assert: 断言,用来进行程序调试boolean: 基本数据类型之一,声明布尔类型的关键字break: 提前跳出一个块byte: 基本数据类型之一,字节类型case: 用在switch语句之中,表示其中的一个分支catch: 用在异常处理中,用来捕捉异常char: 基本原创 2020-11-28 16:50:48 · 149 阅读 · 0 评论 -
Java中的局部变量和成员变量的区别
局部变量和成员变量的区别:(1)定义的位置不一样:局部变量:在方法的内部成员变量:在方法的外部,直接写在类当中(2)作用范围不一样:局部变量:只有在方法当中才可以使用,出了方法就不能用成员变量:整个类全都可以用(3)默认值不一样:局部变量:没有默认值,如果要想使用,必须手动进行赋值成员变量:如果没有赋值,会有默认值,规则和数组一样(4)内存的位置不一样:局部变量:位于栈内存成员变量:位于堆内存(5)生命周期不一样:局部变量:随着方法进栈而诞生,随着方法出栈而消失成员变量:随着对原创 2020-11-16 11:38:34 · 121 阅读 · 0 评论 -
Java的内存简介
主要是简单介绍一下Java的内存,要是想了解更多的细节需查更多其他的资料噶。Java的内存需要划分为5个部分:(1)栈(Stack):存放的都是方法中的局部变量,方法的运行一定要在栈中运行。局部变量:方法的参数,或者是方法{}内部的变量。作用域:一旦超出作用域,立刻从栈内存当中消失。(2)堆(Heap):凡是new出来的东西,都在堆当中。堆内存里面的东西都有一个地址值:16进制。堆内存里面的数据,都有默认值。规则:如果是整数: 默认是0如原创 2020-11-16 11:35:54 · 1587 阅读 · 0 评论 -
简单的学生管理系统制作(使用Java代码在IntelliJ IDEA 中展示)
用Java写了一个简单的学生管理系统,能够实现添加学生、删除学生、修改学生、查看所有学生的功能,以下是代码展示。第一步:先写一个学生类//学生类public class Student { //学号 private String sid; //姓名 private String name; //年龄 private String age; //居住地 private String address; public Student(原创 2020-10-25 15:40:11 · 6396 阅读 · 0 评论 -
JRE和JDK的小知识
1、JRE(Java Runtime Environment)它是Java程序的运行时环境,包含JVM和运行时所需要的核心类库。我们想要运行Java程序,那么只需安装JRE即可。2、JDK(Java Development Kit)它是Java程序开发工具包,包含JRE和开发人员使用的工具。其中的开发工具:编译工具(javac.exe)和运行工具(java.exe)。我们想要开发一个全新的Java程序,那么必须安装JDK。3、JRE、JDK和JVM的关系:...原创 2020-09-29 09:32:06 · 104 阅读 · 0 评论