- 博客(17)
- 收藏
- 关注
原创 markdown语法
markdown学习笔记一、标题一级标题 :# 一级标题二级标题:## 二级标题二、文字斜体文字:*文字* or _文字_斜体文字1 斜体文字2粗体文字:**文字** or __文字__ 粗体文字斜粗体文字:***文字***斜粗体删除线:~~文字~~自我否定下划线:<u>文字</u>下划线脚注:一段文字[^脚注][^脚注]:这里是脚注一段文字1高亮:==文字==高亮改变高亮的颜色:<mark style="backg
2022-05-03 14:58:49
371
原创 数组实现的队列为什么需要一个空节点
对队列指针的三种设计:(1)font指向第一个节点,rear指向最后的节点(2)font指向第一个节点的前一个空节点,rear指向最后的节点(3)font指向第一个节点,rear指向最后节点的下一个节点综合来看第二种最好:(个人理解)若使用第一种:在初始化时font=rear=-1.在加入第一个元素时,两个指针都要移动1。判断空的条件是font=rear=-1或者font-rear=-1...
2019-09-26 10:20:27
1881
1
原创 递归回溯解决八皇后
package com.ykh.huisu;/*递归回溯解决八皇后问题 * */public class Queen8 { int[] array=new int[8];//用数组表示每个皇后的位置 int count=0;//记录排列的方法的总数 //判断第n个皇后和前面n-1个皇后是否在同一列或者同一斜线上 public boolean isOk(int n) { for(i...
2019-07-18 15:25:58
184
原创 单链表(java实现)
class SingleLinkList{ Node head=new Node(); public boolean isEmpty() { return head.next==null; } //尾接法插入一个元素 public void insertIntoLast(Node element) { Node temp=head; while(temp.next!=nul...
2019-06-24 11:55:06
168
原创 数组转为稀疏数组
import java.io.IOException;public class SparseArrayTest { public static void main(String[] args) { int[][] oraginArray=new int[5][4]; oraginArray[1][2]=1; oraginArray[2][3]=2; System.out.p...
2019-06-17 12:04:36
310
原创 二分法查找
//二分法查找:被查找的数组必须是有序的排列 //如果是偶数个,就取靠近左边的。 int[] array= {1,3,4,5,6,7,9}; //被查找的数 int find=3; int begin=0; int end=array.length-1; int mid=(begin+end)/2; int i=0; //元素是否存在的标志 Boolean ...
2019-06-17 09:04:39
1798
原创 java多线程,生产者消费者
public class ThreadCooperation { public static void main(String[] args) { // TODO 自动生成的方法存根 SynContainer sync=new SynContainer(); //启用生产者两个线程。 new Product(sync).start(); new Product(sync)....
2019-06-11 20:08:32
166
原创 Comparable接口和Comparator接口(java笔记)
Comparable:从字面理解,Comparable是可比较的意思。从源码来看:Comparable接口只有一个方法:public int compareTo(T o);具体需要实现的功能:结合源码和字面意思来看:所有实现了Comparable接口的类都是一个可以进行比较的类,而且可以和任意类型的对象进行比较,但是比较的方法就具体由自己来定义实现。所有的包装类好像都实现了这个接口。...
2019-04-15 20:04:52
378
原创 包装类和基本数据类型总结(java笔记)
java有八种基本数据类型:四种整数类型:(byte(8位),short(16位),int(32位),long(64位))。默认整数类型是int.意思是所用字面量都是int类型。如100,200。如果想要让字面量表示long类型就在字面量后加l。如:100l(此时字面量占64位。前面有0填充)。类型转换:范围小的能自动转为范围小的。范围大的需要强制转换才能表示范围小的(保证准确性)。关于默...
2019-04-12 17:18:16
279
原创 java笔记,多态
多态可以用现象与本质来理解。栗子(伪代码):class people{void eat(){......}void drink(){.......}}class my{void eat(){我吃东西的方式}void drink(){我喝东西的方式。}void special(){我的特别之处。}}people ykh=new my();当用这样的实例化...
2019-04-10 12:11:20
190
原创 java学习笔记,异常机制
异常机制结构图:Throwable也是继承object类的。异常和错误:异常是在代码中解决的,错误简单点说就是电脑疯了。在上图中IOException属于可查异常,在写代码是必须捕获或者是抛出,不然不能通过编译。RuntimeException和error属于不可查异常,只有在运行时才能发现错误。笔记:如果抛出的异常在方法内就被捕获到了,那么这个方法就算声明了异常抛出也不会抛出异常。...
2019-04-10 10:38:15
149
原创 java学习笔记之同步回调和异步回调
回调:回调就是指互相调用,类A调用类B的方法,被调用的类B的方法有调用类A的方法。可以用接口的多态性来实现。回调可以分为同步回调和异步回调。同步回调:就是要按照顺序来。上代码:package com.ykh;public class ClassA implements callback{ public void funA() { System.out.println("现在演示同步...
2019-04-01 13:20:03
568
原创 代码执行顺序。java笔记(四)
必要知识:1:在代码执行过程中会首先找到main方法,看main方法所在的类有没有父类,若有,则先加载父类,再加载子类。2:静态方法的初始化,静态代码块的执行,静态方法的声明都是在类加载过程中完成的。3:父类的加载都在出现在子类之前。4:类的加载只有在需要这个类的时候才会加载。5:在加载过程中会出现暂停类加载的现象。6:父类无参构造和构造块是在子类实例化是最先执行的。具体顺序1、为...
2019-03-27 20:05:34
258
原创 java学习笔记(三)栈,堆,方法区。
一:栈栈区是被每个线程所有的,伴随线程的创建而创建,线程执行完毕后,所属的栈也会消失。栈占有的是连续的内存。所以它的执行速度会比较快。栈中存放的是基本数据类型和引用数据类型的引用。每次向栈中压入的都是方法帧。例子:public class StackTest { public static void main(String[] args) { // TODO 自动生成的方法存根...
2019-03-25 16:48:03
179
原创 java学习笔记(2)访问权限控制
private:只有本类可以访问。缺省:只要在一个包里都可以访问。protected:除了在同一个包里能访问外,不同包里的子类也能访问(但是在不同包里是只能用子类的对象访问,不能被父类的对象访问,这个我也不知道为什么)public:任何地方都可以访问。类的修饰符只能是public或者缺省。代码演示(主要演示缺省和protected):package packageA;public ...
2019-03-19 17:53:01
175
原创 对接口的一些理解
萌新第一次写博客。。。初学面向对象时,对接口和抽象方法有点搞不清楚,所以就总结一波~~一:接口的一些基本知识接口是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。接口不可以被实例化但是可以被继承。在我的理解中,接口就是规定了被继承类必须实现的方法,是对类所能实现的方法的扩展。(这句话好像有点不好理解,待会有例子说明)。...
2019-03-18 16:11:13
1467
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅