《编程之美》之前有看过,不过看完之后不仅啥也没记住,反而是把自己绕得一团晕,重读《编程之美》也是想重新梳理一下算法中的逻辑,并试图找出那些所谓“美”的算法的共性,同时也希望能够结交一些有着共同爱好的童鞋。好了,废话到此,咱们开始吧。 1、题目:对于一个字节(8bit)的变量,求其二进制 ...
题目:能否快速找出一个数组 简单起见,数组中元素值各不一样 中的两个数字,让这两个数字之和等于一个给定的值。 例如,给定数组arr 如下图 ,给定值key为 ,则arr arr 满足要求。 解法一 穷举法 穷举说白了就是不断试,题目为从数组中找两个满足条件的数字,即把数组看成两份,遍历第一份中的所有去第二份里面找是否存在满足条件的数字。 思路:穷举数组中任意的两两组合,并计算取出的两个数之和是否 ...
2013-01-17 01:24 16 2221 推荐指数:
《编程之美》之前有看过,不过看完之后不仅啥也没记住,反而是把自己绕得一团晕,重读《编程之美》也是想重新梳理一下算法中的逻辑,并试图找出那些所谓“美”的算法的共性,同时也希望能够结交一些有着共同爱好的童鞋。好了,废话到此,咱们开始吧。 1、题目:对于一个字节(8bit)的变量,求其二进制 ...
最近就开始找实习了,特意把上学期买的编程之美拿出来练练手,算法还是比较关键的。据说很多题的思路都可以在编程之美中找到,为纪念这段有意义的时光,特准备写下下面系列博文。每篇博文讲主要研究两至三个算法。 1、求二进制中1的个数。对于一个字节的无符号整形变量,求二进制中1的个数 ...
题目描述 现在有一架飞机要起飞,乘客们正准备按机票号码(1,2,3...,N)一次排队登机。突然来了一只大猩猩(金刚)。他也有机票,但是他插队第一个登上了飞机,然后随意的选择了一个座位坐下了。根据 ...
一.概念引入 最接近点对问题的提法是:给定平面上n个点,找其中的一对点,使得在n个点的所有点对中,该点对的距离最小。严格地说,最接近点对可能多于1对。为了简单起见,这里只限于 ...
一、题目概述:有一个没有排序,元素个数为2N的正整数数组。要求把它分割为元素个数为N的两个数组,并使两个子数组的和最接近。假设数组A[1..2N]所有元素的和是SUM。模仿动态规划解0-1背包问题的策 ...
编程之美电子书下载 24点游戏大家都知道:4张牌,可以进行+ - * / 四种运算,可以使用括号,每个牌用一次,任意组合构造表达式使结果为24。 扩展问题:n个整数,四种运算,可使用括号,每个数字使用一次,使表达式结果为 k 下面的算法1和算法2都是穷举,只是穷举的方式不一样,以下给出 ...
Tango是微软亚洲研究院的一个试验项目。研究院的员工和实习生们都很喜欢在Tango上面交流灌水。传说,Tango有一大水王,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻改水王发帖数目 ...
编程判断2个链表是否相交(假设2个链表均不带环) 解法二: 利用计数的方法,如果我们能够判断2个链表中是否存在地址一致的节点,就可以知道这2个链表是否相交。一个简单的做法是对第一个链表的节点地址进行hash排序,建立hash表,然后针对第二个链表的每个节点的地址查询hash表,如果在hash表 ...