2016年7月28日
摘要: java中集合框架的概述 java集合类主要用于保存对象的。 常用的集合对象: Colletion接口,Collection接口是集合中的顶层容器,表示的是一组对象,它的下面有两个子接口List接口和Set接口。 List接口:元素有序,可以重复。 ArrayList:底层以数组进行存储元素,存储在 阅读全文
posted @ 2016-07-28 13:33 rising1234 阅读(1545) 评论(0) 推荐(0) 编辑
  2016年7月26日
摘要: 快速排序 算法思想:基于分治的思想,是冒泡排序的改进型。首先在数组中选择一个基准点(该基准点的选取可能影响快速排序的效率,后面讲解选取的方法),然后分别从数组的两端扫描数组,设两个指示标志(lo指向起始位置,hi指向末尾),首先从后半部分开始,如果发现有元素比该基准点的值小,就交换lo和hi位置的值 阅读全文
posted @ 2016-07-26 20:11 rising1234 阅读(195864) 评论(17) 推荐(0) 编辑
摘要: 二分查找 算法思想:又叫折半查找,要求待查找的序列有序。每次取中间位置的值与待查关键字比较,如果中间位置的值比待查关键字大,则在前半部分循环这个查找的过程,如果中间位置的值比待查关键字小,则在后半部分循环这个查找的过程。直到查找到了为止,否则序列中没有待查的关键字。 实现: 1.非递归代码 2.递归 阅读全文
posted @ 2016-07-26 19:03 rising1234 阅读(59529) 评论(0) 推荐(1) 编辑
  2016年7月25日
摘要: 概述:异常是java程序运行时出现的一些意外情况。 异常的分类:所有的异常都继承自java.lang.Trowable类,Trowable类有两个直接子类,Exception和error。 异常的层次结构图: error是java程序本身无法恢复的严重错误,一般不进行捕获,处理,一般是通知用户并终止 阅读全文
posted @ 2016-07-25 20:46 rising1234 阅读(473) 评论(0) 推荐(0) 编辑
摘要: 线性表 概念:零个或者多个数据元素的有限序列。 特点:除了第一个元素没有前驱结点,最后一个元素没有后继结点外,其它元素有且仅有一个直接前驱和一个直接后继结点。元素的个数必定为有限个。 实现: 定义一个接口: 实现线性表 线性表的查找效率高,但是插入和删除要移动大量元素所以效率比较低。 ArrayLi 阅读全文
posted @ 2016-07-25 19:52 rising1234 阅读(473) 评论(0) 推荐(0) 编辑
  2016年7月24日
摘要: 希尔排序 希尔排序算法实际上是一种特殊的插入排序,由DL.Shell于1959年提出而得名。 算法思想:希尔排序使数组中任意间隔为h的元素都是有序的,这些数组称为h有序数组,对于每个h,按插入排序进行排序。 算法实现: 分析: 然后执行h=h/3=1,即按插入排序对整个数组进行排序。此时倒置的元素很 阅读全文
posted @ 2016-07-24 15:13 rising1234 阅读(851) 评论(0) 推荐(0) 编辑
  2016年7月23日
摘要: 值传递与引用传递 最近学基础的时候,老师讲了值传递和引用传递,这个问题一直不太明白,上网查了很多资料,按照自己的理解整理了一遍,发现之前不太明白的地方基本上想明白了,如有不正确的地方,欢迎指正,谢谢。 首先要说明的是java中是没有指针的,java中只存在值传递,只存在值传递!!! 然而我们经常看到 阅读全文
posted @ 2016-07-23 10:27 rising1234 阅读(102604) 评论(14) 推荐(14) 编辑
  2016年7月22日
摘要: 一、冒泡排序 算法思想:遍历待排序的数组,每次遍历比较相邻的两个元素,如果他们的排列顺序错误就交换他们的位置,经过一趟排序后,最大的元素会浮置数组的末端。重复操 作,直到排序完成。 示例演示: 算法实现: 算法时间复杂度:O(n2) 外层循环需要比较n-1次,内层循环需要比较n次。 二、选择排序 算 阅读全文
posted @ 2016-07-22 20:41 rising1234 阅读(25823) 评论(0) 推荐(0) 编辑