笔趣阁

手机浏览器扫描二维码访问

第四十四章 算法之美(第1页)

「哎呀,别卖关子了,赶紧说吧!」

看着老爹一幅悠然闲适的样子我牙根儿都痒痒,如果不是害怕遭雷劈可能早就用鞋底招呼过去了。

「好吧好吧,那我就说吧。其实要通过键值来避过switch目前我能够想到的有两种方法,其中一种比较取巧,另一种就是正儿经的通过计算得出来。

刚刚你们也说了,如果是对灰太狼进行上下移动,实质上是在对行数x进行加减,左右移动,是对列数y做加减,那我们定义一个二维数组,把要加减的量放在数组里面,然后通过键值把数组取出来就好了。

向上移动,x-1,也就是x(-1),y0;

向下移动,x1,y0;

向左移动,x0,y-1,也就是y(-1);

向右移动,x0,y1;

键值的排列是左37,上3,右39,下40,如果我们对它们进行减运算,得到的结果是左0,上1,右2,下3,正好可以作为数组的下标。

于是就可以声明一个偏移量数组:

intoffset[4][2]={{0,-1},{-1,0},{0,1},{1,0}};

我们知道了灰太狼当前的位置,也可以通过键值获取位置的改变量,那么下一个位置、下下个位置自然就能够确定了。假设我们把移动这部分的逻辑定义成一个move函数,那么实现逻辑大概如下:

intmove(intkeycode)

{

intindex=keycode-37;

intx1=灰太狼当前位置xoffset[index][0];

inty1=灰太狼当前位置yoffset[index][1];

intx2=灰太狼当前位置xoffset[index][0]*2;

inty2=灰太狼当前位置yoffset[index][1]*2;

移动判断逻辑

}

x1,y1和x2,y2就是当前移动方向的下个位置,下下个位置的坐标,有了它们,实现功能应该就不是什么难事儿了吧?」

「这样……都行?」

我和小弦子都被老爹这波操作秀到了,真的特别让人无语。就好像你想尽一切办法,使尽浑身解数都没有将一块大石头给搬起来,然而在这个时候某个人拿了几个滑轮和绳子,不费吹灰之力就大石头给搬起来了。

不仅是我和小弦子有这种感觉,就连之前陷入沉思的六叔叔也是好一阵无语,如果一定要用一个词语来形容我们此时此刻的心情,大概还是只有「卧槽」这两个字了。

但不得不是说的是,老爹的这种做法让人挑不出来任何的毛病来,而且简单易懂,实现起来也极为容易。

很显然,这并不是我,小弦子和六叔叔想要看到的结果,因为这和我们想象中的算法相差太大了!

算法难道不应该是经过一系列精密的计算后,最终得到想要的结果么?

「哈哈,你们别这样看着我,我之前声明过的,这种方法比较取巧。而且作为一个合格的程序员,就是要用最简洁的代码实现最复杂的功能,因为简洁同时也意味着效率高。」

热门小说推荐
旧日主宰

旧日主宰

你使用了外挂,催眠术提升九百九十九级。你使用了外挂,融合了巨熊功巨鲸功等一百八十门古武,获得泰坦神功,觉醒泰坦巨力。这是一个枪炮古武改造人半兽人邪灵并存的时代。当新时代的枪炮敲响了旧时代的丧钟,唐文带着外挂降临了。我从旧日来,主宰新时代!老月已经完本法师奥义永恒武道长生种皆是精品,老月出品...

至尊妖孽兵王

至尊妖孽兵王

一代妖孽战医叶洛,受杀手之王临终托女隐居都市。本想安稳过日子的他,却不经意间被美女包围,娇俏护士,火爆女警,富家千金,冷傲总裁,当红女星…一个个闯进他的生活,搅乱了他的平静。叶洛叹息装逼泡妞我早已厌倦,只想做个平凡人,你们何必逼我呢?...

星际传奇

星际传奇

五千年的科技发展使人类文明繁荣兴盛,探索宇宙的愿望得以实现,星际时代来临。但是在未知的宇宙深处,等待人类的除了宇宙深层的奥秘外,还有数不尽的危险。这一次,人类不再是为探索而战,而是为了生存...

从王子到神豪

从王子到神豪

重生为土豪王子,第一件事做什么?先花它一个亿。性格慵懒的凌洲,重生为王子,本想快乐地享受奢侈生活的他,从第一次提取到一个‘未来片段’开始,从此一发不可收拾。从一名纨绔王子,一步步变成世界顶级神豪。书风格相对轻松一些。...

把她宠坏

把她宠坏

书海阁小说网免费提供作者木羯酱的经典小说把她宠坏最新章节全文阅读服务本站更新及时无弹窗广告欢迎光临wwwshgtw观看小说把她宠坏或把她宠坏,或把她哄乖)...

每日热搜小说推荐