当前位置: 首页 > news >正文

台州网站优化方案在线定制网站官网

台州网站优化方案,在线定制网站官网,wordpress小工具安装,wordpress数据库发布文章文章目录 目录 文章目录 前言 一 什么是稀疏数组? 二 稀疏数组怎么存储数据? 三 稀疏数组的实现 总结 前言 大家好,好久不见了,这篇博客是数据结构的第一篇文章,望大家多多支持! 一 什么是稀疏数组? 稀疏数组#xff08;Sparse Array#xff09;是一种数据结构Sparse Array是一种数据结构用于表示大部分元素值为默认值的数组。在稀疏数组中只有非默认值的元素被存储而默认值的元素则被忽略。这样可以节省存储空间特别适用于稀疏矩阵等大规模数据结构。 稀疏数组通常由三个部分组成 原始数组的大小记录原始数组的行数和列数。非默认值元素的个数记录非默认值元素的个数。非默认值元素的位置和值以二维数组的形式存储非默认值元素的位置和值。 通过使用稀疏数组可以在存储和传输数据时减少所需的空间和时间。 简单来说,就是压缩数据时使用,稀疏数组同样也是一种数据结构 二 稀疏数组怎么存储数据? 稀疏数组通常由三个部分组成 原始数组的大小记录原始数组的行数和列数。非默认值元素的个数记录非默认值元素的个数。非默认值元素的位置和值以二维数组的形式存储非默认值元素的位置和值。 图解: 稀疏数组的第一行记录的不是元素,而是原数组的行数,列数,非零元素个数。 稀疏数组其他行记录的是原数组非零元素的行列和值 解释的话难免有些不清楚,大家看图即可! 三 稀疏数组的实现 接下来带大家一步步的来实现稀疏数组(按上面图示实现)! 1.首先创建一个六行七列的二维数组 int[][] arr 2.给原数组赋值并遍历 3.创建稀疏数组SpareArr[][] 这三个没什么难度,大家觉得行的可以尝试一下下面的三个,代码给出 int[][] arr new int[6][7];// 创建数组存入数据并初始化arr[0][3] 22; arr[0][6] 15; arr[1][1] 11; arr[1][5] 17; arr[2][3] -6; arr[3][5] 39 ; arr[4][0] 91 ; arr[5][2] 28 ;//遍历打印并记录非零元素的个数 int sum 0; for (int[] ints : arr) {for (int j 0; j arr[0].length; j) {System.out.print(ints[j] );if (ints[j] ! 0) {sum 1;}}System.out.println(); }// 创建稀疏数组 // 稀疏数组的行为元素的个数1 因为稀疏数组的第一行记录的是总的元素个数,而不是某一个元素的值 int[][] SpareArray new int[sum1][3];4.给稀疏数组赋值 // 稀疏数组的第一行比较特殊,因此我们不借助循环,直接进行赋值。 SpareArray[0][0] arr.length;// 原数组的行 SpareArray[0][1] arr[0].length;// 原数组的列 SpareArray[0][2] sum;// 原数组中元素的个数//遍历原数组,并将数组中的元素存入稀疏数组中 int count 0; for (int i 0; i arr.length; i) {for (int j 0; j arr[0].length; j) {if(arr[i][j] ! 0){// 如果元素不为零,就讲该元素存入稀疏数组中count;SpareArray[count][0] i;SpareArray[count][1] j;SpareArray[count][2] arr[i][j];}} } 5.将稀疏数组导入\导出文件 // 创建字符缓冲输出流将稀疏数组保存到文件中 FileOutputStream fos new FileOutputStream(D:\\系统默认\\桌面\\测试.txt);for (int[] ints : SpareArray) {for (int j 0; j SpareArray[0].length; j) {fos.write(ints[j]);} } fos.close();FileInputStream fis new FileInputStream(D:\\系统默认\\桌面\\测试.txt); int read1 fis.read();// 行 int read2 fis.read();// 列 int read3 fis.read();// 总个数 count read3;int[][] newArr new int[read1][read2]; for (int i 0; i count; i) {read1 fis.read();read2 fis.read();read3 fis.read();newArr[read1][read2] read3; } fis.close();for (int i 0; i newArr.length; i) {for (int j 0; j newArr[0].length; j) {System.out.print(newArr[i][j] );}System.out.println(); } 看着是不是挺简单的,我也这么觉得 总结 就到这了,感谢大家观看!
http://www.pierceye.com/news/328992/

相关文章:

  • 匿名聊天网站开发网站关键字挖掘
  • 外国域名注册很多网站做网站的人找不到了
  • 好的学习网站打广告免费浏览器网站
  • 美团先做网站还是app学生网站建设的总结与评价
  • 网站建设代理网站wordpress微博
  • dw建设网站视频宁波seo优化项目
  • 网站里添加百度地图浙江网站建设公司
  • php网站开发最新需求排名优化百度
  • 网站制作的电话智慧校园信息门户网站建设
  • 网站备案申请福田企业网站优化方案
  • 企业网站seo怎么做有空间站的国家
  • Linux网站建设总结网站建设目的确定
  • 怎么做网站的内部链接wordpress 写php页面跳转
  • 推广自己的网站网页设计代码html文件怎么查
  • 网站在线制作软件邯郸公众号小程序制作
  • 网站后台生成静态页面天津百度推广电话号码
  • 网站单个页面301跳转湖南省建设局网站
  • 潮州网站建设十堰seo招聘
  • 企业网站建设公司公司系统优化的方法
  • 网站开发与sparkwordpress default
  • 品牌网站建设帮你大蝌蚪北京做网站建设的公司排名
  • 中国建设第一平台网站网络网站建设10大指标
  • 书画院网站源码网站主题模板下载不了
  • 邢台制作网站网上申报流程
  • 做网站的困难做的网站有营销效果吗
  • 高端集团网站建设公司做网站开发的有外快嘛
  • 网站服务器防火墙设置惠州网络推广公司哪家好
  • 做网站根据内容生成pdfwordpress自媒体二号
  • 临沂网站开发不会写代码怎么做网站
  • 怎么做加密货币网站wordpress 多域名登陆