java数据结构学习
_JenKin
这个作者很懒,什么都没留下…
展开
-
Myers差分算法
本文参考了文章: 简析Myers在参考文章中我对Myers差分算法有了一定的理解,但是在代码实现的过程中还是会遇到很多问题,而作者对源码的解释比较少,因此我着重于对实现过程做一个分析。概述我把代码的实现分为了三个部分:绘制编辑图生成snake回溯snake绘制编辑图下图是原论文里面的编辑图,我们需要吧圈起来的点对应的保存下来,保存的方式类似下面的表格在这张表格里面表示了k线和步数d之间的关系具体的代码实现可以参考论文里面的伪代码 private static void my.原创 2021-05-28 20:47:39 · 748 阅读 · 0 评论 -
一、数组的封装
数组首先本身就是一个数据结构,在Java中ArrayList就是一个基于数组而实现的非常好用的工具,这里我就是对数组实现了一些简单的封装,让我们的数组拥有了一些简单的增删改查的功能。 源码贴出~package com.array;/** * java数据结构与算法----数组 * 数组本身就是一种数据结构,这里是对数组的简单封装 * @author ** * */public clas原创 2017-05-18 10:50:19 · 2952 阅读 · 0 评论 -
java冒泡排序
冒泡排序作为最早接触也最简单的一种排序算法,也许对你来说轻而易举,可就这么轻而易举的事情也可以在面试的时候刷下不少人咯 首先来介绍一下冒泡排序的基本思想 1、从最左边开始把当前这个与下一个比较 2、如果当前这个要大就不动,反之就把当前这个与下一个交换位置 3、这样重复一个循环就能保证最大的一个到了最右边 例如这样原创 2017-05-19 09:28:18 · 239 阅读 · 0 评论 -
java选择排序
选择排序算法的原理:每次找出最小的一个数放到数组的最左边,然后从剩余的数组中继续找出最小的数放到剩余数组的最左边package com.sort;public class SelectionSort { /** * * @param arr * @return 返回排序之后的数组 */ public int[] selectionS原创 2017-05-19 10:55:03 · 209 阅读 · 0 评论 -
java插入排序
插入排序与选择排序和冒泡排序相比减少了数据相互比较的时间 插入排序过程中数据是局部有序的,如下: 有一组数据 —-[5,3,9,8,2,4,7,1] arr 第一步,从3开始,3比5小 所以int a=3; arr[1]=arr[1-1];arr[1-1]=a; 变为—[3,5,9,8,2,4,7,1] 第二步,2<5。。。。 变为—[2,3,5,9,8,4,7,1] 。。。。。重原创 2017-05-20 10:10:02 · 209 阅读 · 0 评论