数据结构
小么嘛小二郎
这个作者很懒,什么都没留下…
展开
-
栈应用--表达式求值
自定义栈结构 package cStack; public class Stack { private int defaultSize = 10; protected Object[] objs; protected int top;// top的值是下一个要入栈的元素下标 public Stack() { objs = new Object[10]; top = 0; ...原创 2019-03-20 21:07:50 · 192 阅读 · 0 评论 -
数据结构---TreeSet简单实现
TreeSet简介 TreeSet是无序的集合容器,但也有排序的规则,元素实现Comparable接口,使其具有排序能力, TreeSet按照排序规则,进行排序,也通过这个接口实现元素唯一性;TreeSet不像HashSet,HashSet需要重写hashCode()和equals()方法,保证数据唯一性,hashSet底层存储结构是hash表,TreeSet是二叉树; 源码分析 Tree...原创 2019-03-23 00:35:29 · 617 阅读 · 0 评论 -
HashSet保证元素唯一性
Set总述 set存储的数据是唯一性的,是通过存储的对象的两个方法进行唯一性判断的hashCode( )和equals(),在调用集合的add(E e)方法时,会进行判断,通过e.hashCode( )获取要添加对象的hash值,和集合里面的对象进行判断,如果hash值不一样,则会存储。如果一样,则会调用equals()方法,和集合中hash值一样的对象进行判断,如果有一个equals返回true...原创 2019-03-03 00:42:13 · 553 阅读 · 0 评论 -
设计模式-观察者模式
1. 总述 介绍: 观察者模式是行为模式,是将一个对象与其其他对象进行关联,当对象发生改变时 通知关联对象发生状态改变,自动刷新状态。这个模式作用是一种同步通信的手段, 是对象与关联对象保持同步。 可以用于以下场景: 侦听事件驱动程序设计中的外部事件 侦听/监视某个对象的状态变化 发布者/订阅者(publisher/subscriber)模型中,当一个外部事件(新的产品,消息的出现等等) 被触发...原创 2019-06-01 00:16:47 · 103 阅读 · 0 评论 -
排序算法总结
算法的复杂度 工具方法 public static void swap(int[] arr, int i, int j) { int tmp = arr[i]; arr[i] = arr[j]; arr[j] = tmp; } public static void printArr(int[] arr) { Sy...原创 2019-08-06 16:18:38 · 122 阅读 · 0 评论