
数据结构与算法
数据结构与算法
fusheng-fate
不积跬步,无以致千里,今天的努力只为明天更好的自己。
展开
-
数据结构---栈的应用
栈栈是限制插入和删除只能在一个位置上进行的表,该位置是表的末端,也叫做栈顶。对栈的操作有进栈和出栈,进栈也叫做插入,出栈也就是删除最后插入的元素。因此栈也被称作LIFO(后进先出)表。栈通常有两种实现方式,数组实现和链表实现。下面是栈的两个小应用demo字符串逆序由于栈后进先出的特性,所以栈可以用于字符串的逆序。public void reverseStr(String str){ Stack<Character> stack=new Stack<>();原创 2020-06-05 00:18:17 · 156 阅读 · 0 评论 -
数据结构----顺序表Java实现
顺序表定义:顺序表是一种顺序存储的线性结构。比如A0 … Ai … An-1这样的表,表中的第一个元素是A0,表的最后一个元素是An-1,A0没有前驱元,An-1没有后继元,元素Ai在表中的位置是i+1,表中逻辑上相邻的两个元素在物理位置上也相邻。下面是我写的一个小demo定义接口public interface IList { public int length();//获取顺序表的size public boolean isEmpty();//判断顺序表是否为空 publ原创 2020-06-03 21:30:09 · 468 阅读 · 0 评论 -
快速排序-java实现
快速排序 1. 快速排序原理 快速排序就是选取一个值作为基准,经过一轮排序将数据分为两个部分,左边的数据都小于基准值,右边的数据都大于基准值,然后左边右边重复之前的操作,直到排完。 2.快速排序详细步骤 我们在排的过程中,相当于定义两...原创 2019-07-09 20:33:19 · 179 阅读 · 0 评论 -
归并排序--java 实现
归并排序 归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分治法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。速度仅次于快速排序,为稳定排序算法,一般用于对总体无序,但是各子项相对有序的数列.**步骤**...原创 2019-07-11 21:54:40 · 97 阅读 · 0 评论 -
排序(冒泡、选择、插入、快速、归并)
排序今天把之前写的排序整理了一下,之前写的有点乱,现在把这些整合在一起,后续在接触到别的排序算法会继续在这篇博文上添加。排序算法一:冒泡排序public static void bubbleSort() {//冒泡 int []array ={1,8,4,6,2,3}; for(int i=0;i<array.length;i++){ for(int j = 0;j<...原创 2019-07-19 21:58:21 · 233 阅读 · 0 评论