登陆注册
37240300000128

第128章 地图压缩(中)

“阿历克斯,再想想别的法子吧”,牛仔央求地说道。

“唉,好吧”,杨成只好单手托腮,开始了思考。

地图信息实例像这样:

[true, true, true, false, true ]

[false, false, true, false, false]

[true, false, true, false, true ]

[true, false, false, false, true ]

[true, true, true, true, true ]

这是一个5X5的矩阵。

其中true代表可通行的区域,false标注的区域无法通行。

那么,怎么把这个地图实例转为手机存储呢?

一种最简单的方法,是把这个实例序列化为字符串,就像这样:

“[[true,true,true,false,true],[false,false,true,false,false],[true,false,true,false,true],[true,false,false,false,true],[true,true,true,true,true]]“

这种方法很有效,但缺点也很明显。

占用的存储空间太多了,远远超过了10个字符的长度。

所以,必须想一个方法,对地图信息进行压缩。

杨成通过观察,发现了一种比较好的压缩方法。

使用二进制!

true可以用数字1来替代,false用数字0来替代。

那么矩阵就成了0和1构成的数字矩阵。

然后,将矩阵的每一行,看作是二进制数字。

比方说,第一行:

[true, true, true, false, true ]

替换成数字:

[1, 1, 1, 0, 1 ]

看作二进制数字:

“11101”

然后将这个二进制数字,转换为36进制。

得到小写字母“t”。

这样,足足减少了4个字符,达到了压缩的目的!

对矩阵的每一行都这么处理,就可以得到5个36进制字符。

再将这5个字符用逗号分割开来,以表明行结束。

总共只需要5+4=9个字符,其中包括4个逗号。

这个方法是切实可行的,但还有更好的办法!

同类推荐
  • 渡星之全民星武

    渡星之全民星武

    这是个英雄辈出的时代,科技停滞不前,古武高速发展。科技与古武的相铺相成,秘术与学术的融合。昭河星域,就是这样的一个世界。
  • 机战越界

    机战越界

    世界系统,一个凌驾于所有时空之上的系统,被系统选中的人将拥有穿越时空的力量,机缘巧合成为越界者的姬月夜穿越在无限的世界当中,为了活着回到原来的世界,为了拯救妹妹的绝症,他驾驶着熟悉而陌生的机体纵横在无限机战世界。
  • 时空boss娘

    时空boss娘

    她是大乘期高手,是伊始大陆时空管理者;他是SSS级精神力强者,是联邦的新任上将;原本他们各自生活在各自的时空中,终身不会有交集,却未曾想,命运的安排使她来到他的时空,于是,两人之间又会擦出怎样的火花呢?凤小西的目标是早日飞升,升职加薪。所以一直是个兢兢业业小员工,为了巴结上司前去帮忙,谁曾想却被坑。虽说也是变相升职了,不过这种方式我不想要啊喂!算了,还是努力工作吧!没准儿那天就回去了呢!
  • 万相灵常心

    万相灵常心

    万相灵常心,讲述一个真实的如你我般平凡的草根在各种压力和折磨,由气运性命带来希望,以围棋进入修真和各个文明展开的爱恨情仇,探索世界的道!思考的问题是,当世界的道主宰之际,未来在哪里?从此,书荒就走了....万相皆灵,心为常。
  • 宇宙之恒光

    宇宙之恒光

    一个有血气的未成年小混混,因为无知和所谓的义气,被抓。要死了吗?或者一生被关押吗?他不甘心。认为自己还有太多的使命。等他逐渐完成使命时。了解了一个不为地球人知的秘密。因为这个秘密他最终走向了一条。。。。。。的道路。
热门推荐
  • 孤傲冷少:绝爱高冷娇妻

    孤傲冷少:绝爱高冷娇妻

    他傲娇冷酷,绝世帅气,以为此生无爱?许许多多的女人无数次追求,他视而不见,见到她却翻天覆地。她,高贵优雅,却被他占满了心......“我这辈子完了,心里只住了你一个。”他声音依旧冰冷。“怎么完了?”她明明想笑,却还是冷言相对。“你不爱我。”“爱爱爱,我爱你,行了吧。”她早就爱上他了,还不承认?
  • 烽火郎君

    烽火郎君

    普通少年朱彦面临情场和事业的双失败,却意外加入烽火台成为炼器师。发觉父母失踪后得到了父亲收藏的炼器师笔记和修炼秘籍,为了救回父母和查清楚父亲真实的身份,跟随老师一步步走上炼器师的道路,慢慢发现这条路不是自己想象的那么简单。
  • 爱是当初最美的遇见

    爱是当初最美的遇见

    他,冷酷无情,不近女色,有着人神共愤的面孔和帝王般的权利;她,美丽聪慧,优雅傲娇,有着倾国倾城的绝色容颜和完美的家世。两人本无交集,却又有缘相遇,直到两人的感情升温。某男才深情告白:“我们的爱是当初最美的遇见。”
  • 嫡女未央

    嫡女未央

    上天有眼,她凤若桐又睁开眼睛,重生为人了!不是都当她结巴懦弱好欺负吗?那就继续扮猪吃老虎,撕破二妹的美人皮,揭破姨娘的伪善真面目,报复恶毒心上人的卑鄙行径,为自己、为娘亲讨回公道!嫡女重生,锋芒渐露,绝色女子才艺无双,惊艳天下,谁与争锋!她傲然笑对天下人,我命由我不由天!可是苍天,她只想报仇而已,风流王爷阅人无数,为何偏对她不依不饶,戏弄起来没完没了?什么,想娶她做王妃?开什么玩笑!就凭他的风流花心,她会稀罕一个天天在女人堆里打滚的男人?
  • 创世黑客

    创世黑客

    人类发明了人工智能,但是,当人工智能发展到颠峰状态的时候,却危及到了人类的自身安全……莫伏星球上也生活着人类,它是平行宇宙中的一个高科技星球,它的科技水平比地球要领先十万年左右。然而不幸的是,那里的人工智能却超出了人类的掌控,通过秘密地手段渗透,然后对人类进行大规模屠杀,对人类造成了毁灭性的打击。顽强的人类并没有被机器人的残酷杀戳所吓倒,他们组成秘密的组织“人类之光”,秘密传承着人类血脉,他们是人类的英雄,为失去的家园而与机器人斗智斗勇。然而,事情远远没有这么简单,莫伏星球上的机器人不但统治了莫伏星球,他们的罪恶爪牙已经开始伸向地球,严重地危及到地球的安全,为了保卫地球,一个盖世英雄出现了……
  • 妖王暴宠小狐狸

    妖王暴宠小狐狸

    升仙是件大事,最不能大意。当一个狐狸历经九九八十一难好不容易得到了仙丹,只要寻一高处在日落之前吃下就可得道成仙,却没曾想刚要吃就被人这么一撞,仙丹就飞了出去,恰巧落在了撞他那人的嘴里,这他忍了,只是,喂,你摔下悬崖就认命吧,干嘛还拉上我呀
  • 他叫李哪吒

    他叫李哪吒

    他是谁啊?他可是中坛元帅、三坛海会大神、威灵显赫大将军,虽说是仙童,一米八个大个子,还傻,还帅,我墨莲不要谁要啊...
  • 神弓鬼矢

    神弓鬼矢

    一念常惺,才避去神弓鬼失;纤尘不染,方解开地网天罗。
  • 盛宠医妃

    盛宠医妃

    她是来自异世的一丝魂魄。他是高高在上的至尊亲王。穿越第一天,她险些被当做刺客抓了起来,而她钻进了他的袍底躲过一劫,却不小心撞到了他。灯影憧憧,风光旖旎,红绡帐内,长腿一踢,她直接把他踢到了床下。“说,你刚刚是不是想对我用强,我告诉你,就算是要用强,也是本姑娘我用,过来,躺下。”第二天,京师轰动。诚亲王府暗暗传出消息,他们高贵圣洁、温雅如玉的亲王殿下被猪给拱了……【情节虚构,请勿模仿】
  • 神千域之北冥幽境

    神千域之北冥幽境

    因果循环,有星坠人间,化作拥有五万年岁月、五十五岛屿的北冥幽境。两千多年前,庄周进入北冥幽境三百纪,见鲲鱼化鸟,鹏鸟南飞,作得《逍遥游》一篇。今有其后人再次进北冥幽境五百纪,然而,幽境内却是生灵绝灭,破败不堪。原来是……你顺时光之流而下,夺天地之造化,斩大道之轮回,禁神女于天湖,方至神域之穷途;故,我欲逆时光之流而上,解存亡之门户,还阴阳之终始,救岚神于梦泽,以开世宇之新路。