
Java数据结构和算法
一些经典算法分析与实现
JadeXu07
程序猿
展开
-
认识稀疏数组,将稀疏数组存入磁盘并取出
稀疏数组 第一行:记录原始数组一共有几行几列,几个不同的值 余下行:把具有不同值的元素的行列及值记录在一个数组中,从而缩小程序的规模 当一个二维数组的很多值是默认值0,则该数组就记录了很多没有意义的数据。这个时候就可以用稀疏数组了。 应用实例 分析思路 代码实现 public class SparseArray { public static void main(String[] args) { //1、11*11的原始棋盘,0为无效数据,1为黑子,2为蓝子原创 2021-02-02 15:37:02 · 623 阅读 · 1 评论 -
Java之杨辉三角(二维数组储存)
import java.util.Scanner; public class Main{ public static void main(String[] args) { /** * @author JadeXu * @// TODO: 2020/12/4 二维数组储存杨辉三角 * 分析:用二维数据存储,每一层代表一个一维数组,长度从1依次递增 * 每一层的第一位和最后一位相同 * 每一层的第原创 2020-12-05 17:06:23 · 594 阅读 · 0 评论 -
Java正序倒序取出一串数字中的各个位数(两种方法)
public class TakeOutEachNumberInAStringNumbers { /** * @author JadeXu * @// TODO: 2020/12/2 取出一串数字中的每一个数字,正序倒序 */ //正序 /** * 方法1 数学逻辑 * @param num 一串数字 */ public static int[] getNumByPositive1(int num) {原创 2020-12-12 17:06:02 · 709 阅读 · 1 评论 -
Java二分法查找(递归、循环实现)
Java二分法查找(递归、循环实现) public class BinarySearch { public static void main(String[] args) { /** * @author JadeXu * @// TODO: 2020/12/7 二分查找 * 思路: * 1、获取数组的中间值,先获取下标,方便多次查找 * 奇数位的数组直接获取中间位,偶数位的数组获取中间的第一位或原创 2020-12-07 19:34:45 · 478 阅读 · 1 评论 -
Java之选择排序(正序、逆序)
public class SelectSort { public static void main(String[] args) { /** * @author JadeXu * @// TODO: 2020/12/4 选择排序 * @思路 * 每一层找最小值,放在i位,i从0开始递增,最后找到剩两位数时就只要走一层,所以要走(数组的长度-1)层 * 先找最小值,从i开始的每一位数都要和最小值原创 2020-12-05 17:00:10 · 787 阅读 · 0 评论 -
Java之冒泡排序(正序、逆序、特定排序)
public class BubbleSort { public static void main(String[] args) { /** * @author JadeXu * @// TODO: 2020/12/3 冒泡排序 * @思路 * 每一层里,依次比较,将最大值排到数值最后 * 每层排序次数,依次递减,因为在上一层就把上一层的最大值排到最后了 * 从上到下每层依次是原创 2020-12-05 16:58:42 · 396 阅读 · 0 评论