数据结构 数据结构其实就是一种存储数据的格式。可以有效的改善代码中数据的存储。 稀疏矩阵 对于一个二维数组,如果数组中大部分元素为0,那么会造成内存空间极大的浪费。因此,设计一种针对稀疏数组的数据结构就很有必要,例如: 可以看出,稀疏矩阵是将一种矩阵转换,将N行M列的矩阵转换为X行3列的矩阵,当矩阵 ...
分类:
其他好文 时间:
2020-03-01 21:59:42
阅读次数:
74
public static void main(String[] args) { // 创建一个原始的二维数组 9*9 int chessArr1[][] = new int[9][9]; // 0表示没有棋子,1表示黑子,2表示白子 chessArr1[1][2] = 1; chessArr1[2 ...
分类:
编程语言 时间:
2020-02-20 18:44:25
阅读次数:
77
稀疏数组 实际需求 二维数组很多值为0,记录了很多没有意义的数据,故引出稀疏数组 基本介绍 当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存数组 稀疏数组的处理方法 : 1. 记录数组一共有几行几列,有多少个不同的值 2. 把具有不同的元素的行列及值记录在一个小规模的数组中, ...
分类:
编程语言 时间:
2020-02-20 13:06:28
阅读次数:
70
稀疏数组 实际需求 二维数组很多值为0,记录了很多没有意义的数据,故引出稀疏数组 基本介绍 当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存数组 稀疏数组的处理方法: 记录数组一共有几行几列,有多少个不同的值 把具有不同的元素的行列及值记录在一个小规模的数组中,从而缩小规模 ...
分类:
编程语言 时间:
2020-02-14 22:27:12
阅读次数:
80
稀疏数组基本概念: 稀疏数组应用场景: 当一个数组大部分的元素为"0",或者为同一个值的数组时,可以使用稀疏数组来保存该数组 处理方法: 1>记录数组一共有几行几列,有多少不同的值 2>把具有不同值的元素行列及值记录在一个小规模数组中,从而缩小程序规模 row col val [0] 总行 总列 有 ...
分类:
编程语言 时间:
2020-02-02 12:04:45
阅读次数:
52
①实际需求 ②稀疏数组基本介绍 代码实现 1 package DataStructures01; 2 3 public class SparseArray { 4 5 public static void main(String[] args) { 6 /*1,二维数组转稀疏数组 7 * ①遍历原始 ...
分类:
编程语言 时间:
2020-01-28 15:30:09
阅读次数:
89
一.数据结构的分型 数据结构包括线性结构和非线性结构 线性结构: 1.线性结构是最常见的数据结构,其特点是数据元素之间一对一的线性关系 2.线性结构有两种不同的存储结构(数组)和链式存储结构(链表),顺序存储的线性表称为顺序表,顺序表中存储的元素是连续的 3.链式存储的表称为链表,链表中的存储元素不 ...
分类:
编程语言 时间:
2020-01-23 13:56:13
阅读次数:
88
一、数据结构的分类 1. 数据结构两大类 线性结构 和 非线性结构 1) 线性结构 线性结构是最常见的数据结构,特点是元素间存在一对一的线性关系。 线性结构又分两种,一种是顺序存储(称为顺序表),另外一种是链式存储(称为链表)。顺序表中的存储元素的连续的。链表中的存储元素不一定是连续的,元素节点中存 ...
分类:
编程语言 时间:
2020-01-22 11:07:18
阅读次数:
79
序言 所谓稀疏数组就是数组中大部分的内容值都未被使用(或都为零),在数组中仅有少部分的空间使用。因此造成内存空间的浪费,为了节省内存空间,并且不影响数组中原有的内容值,我们可以采用一种压缩的方式来表示稀疏数组的内容。 应用 可以使用稀疏数组来保留类似前面的二维数组(棋盘,地图等) 把稀疏数组存盘,并 ...
分类:
编程语言 时间:
2019-12-28 13:23:44
阅读次数:
92
一、概念 SparseArray 主要用于对数据压缩,就拿一个存储五子棋的游戏来实现 这个棋盘的格局11×11,默认为0,黑子用1代替,蓝子用2代替,如果直接存储会浪费很多空间。 通过定义一个对象来存储每一个数据的位置和值,就可以减少存储空间的浪费 黑子:Row:1 Column:2 Value:1 ...
分类:
编程语言 时间:
2019-12-26 11:32:36
阅读次数:
76