java
文章平均质量分 89
LG_DHS
这个作者很懒,什么都没留下…
展开
-
栈的存储结构
一、栈的概念 栈是一种只允许在一端进行插入和删除的线性表,它是一种操作受限的线性表。 在表中只允许进行插入和删除的一端称为栈顶(top)。另一端称为栈底(bottom)。 栈的插入操作称为入栈或者进栈(push)。栈的删除操作称为出栈或者退栈(pop)。 当栈中无数据时,我们称为空栈。 栈的特点:先进后出。! 二、栈的顺序存储结构 java实现代码class SqStack{ priv原创 2017-10-22 13:37:24 · 2714 阅读 · 0 评论 -
java的泛型编程
一、泛型的基本概念 泛型(Generic type 或者 generics)是对 Java 语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类。可以把类型参数看作是使用参数化类型时指定的类型的一个占位符,就像方法的形式参数是运行时传递的值的占位符一样。 泛型的作用: 1、类型检查: 2、类型的强转 关于是实现多类型的功能,Object也可以实现,但是Object类型并没有涉及到类原创 2017-11-16 13:14:12 · 217 阅读 · 0 评论 -
容器类
import java.util.Arrays; import java.util.Random;//实现一个容器类 class ArrayList<T> implements Cloneable{ protected T[] elementData; protected int size; //initialCapacity指定数组初始化大小 @SuppressWar原创 2017-11-17 18:22:57 · 286 阅读 · 0 评论 -
Java之static的用法
一、 概念 static是静态修饰符,主要是为了修饰成员变量,修饰行为方法,修饰代码块。 二、为什么要引入static? 我们在定义一个类时,有时候需要在类的内部定义的变量,在程序执行到它的定义处时,编译器为它在栈上分配空间,函数在栈上分配的空间在此函数执行结束时会释放掉,但是 如果想将类中此变量的值保存至下一次调用, 是不可能的,所以要解决这个问题,最容易想到的方法是定义一个全局的变量,但在Jav原创 2017-10-26 20:35:08 · 275 阅读 · 0 评论 -
java抽象类和接口
一、抽象类 概念:在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 抽象类是用 abstract 修饰的类。 用 abstract 修饰的方法称为抽象方法。 在java中,含有抽象方法的类称为抽象类。 抽象类不能定义对象。 一般基类都可以作为抽象类而存在。 抽象类不能调用抽象方法。原创 2017-11-17 16:43:12 · 238 阅读 · 0 评论 -
单链表
1、判断当前单链表是否有环?如果有,需要返回环的入口节点,再返回环的节点个数。 解决方案:首先判断是否有环,需要使用两个指针(java里面虽然没有指针,但是方法是一样的),一个为pfast,一个为pslow。pslow每次向前走一步,pfast每次向前走两步,若在某个时候pfast等于pslow,则存在环。到这里肯定会有疑问,如果有环它们两个一定会相遇么?难道不存在快的把慢的越过去,导致它们相遇不了原创 2017-10-26 18:29:47 · 263 阅读 · 0 评论 -
java继承与多态
一、什么是继承? 继承:允许在保持原有类特性的基础上进行扩展,增加功能,从而产生新类(派生类)。也就是复用原有的代码。 继承的目的:程序代码重用,减少冗余。 原有的类称为基类或父类,继承而来的类称为派生类或子类。 所有的类都是从Object类继承而来。 继承的关键字extends。 基类的成员变量需要用protected。protected和private都是私有,其主要区别是被protected修原创 2017-11-17 12:19:53 · 221 阅读 · 0 评论 -
java--数组篇
一、java数组的三种初始化方式 一维数组 int[] array1=new int[7]; int[] array2=new int[]{12,4,5,6,7,8}; int[] array3={12,4,5,6,7,8}; 二维数组 int[][] array4=new int[3][4]; int[][] array5=new int[][]{{1,2,3},{4,5原创 2017-10-22 22:03:59 · 294 阅读 · 0 评论 -
java入门之java数据类型
java数据类型 1. 布尔型boolean类型数据没有值的大小,只允许取值为true或false,不可以用0或者非零的整型值来代替true或false。 2. 所有的类型都没有无符号类型。 3. Java字符采用Unicode编码—utf-8(常用)、utf-16。由于每个字符都占两个字节,因而可以用十六编码形式表示。 java类型在定义时一定要初始化。 在java中,不原创 2017-10-15 11:46:50 · 239 阅读 · 0 评论 -
迷宫问题 非递归(java版)
一、简要 偶尔接触到迷宫问题发现挺有趣的,所以开始研究了一下。我觉得这个问题的关键是: 怎么设计这个迷宫? 怎么利用栈的特点来解决这个问题? 在迷宫行走怎么更改迷宫的方向? 怎么寻找迷宫路径?以及怎么才算找到迷宫路径? 二、思路通过上面的问题关键,在脑中可以构造一个大体的思路: 首先创建一个迷宫maze,对于迷宫可以采用mxn的一个二维数组来设计。 创建一个mazenode节点类来控制二维数组中的原创 2017-10-31 15:47:10 · 1505 阅读 · 2 评论 -
Java泛型通配符解析
考虑一个这样的场景,计算数组中的最大元素。 [code01] [java] view plain copy public class ArrayUtil { public static T max(T[] array) { if (array == null || 0 == array转载 2017-11-16 18:42:51 · 262 阅读 · 0 评论