数据结构和算法
badgerYo
前端
展开
-
N个数中的第k个最大值
确定一组N个数中的第k个最大值,这是数据结构和算法分析(java语言描述)中讨论的第一个问题。书中第一章也已给处两种常规思路:1-先将N个数的数组整体进行递减排序,然后返回位置k(数组索引为k-1)上的元素。 2 - 先将N个数的前k个数读入到数组,并将数组递减排序。然后将剩下的元素逐个读入。新元素读取时,如果小于数组中第k个元素则忽略,否则就放入到正确的位置,同时数组中最后一个元素被挤出数组。原创 2017-06-05 11:01:52 · 1352 阅读 · 1 评论 -
递归实现数N的二进制表示
实现递归方法,使它返回数N的二进制表示中的1的个数。(如果N是奇数,那么N的二进制表示中的1的个数为N/2的二进制表示的1的个数加1)。实现见文章最后。 数据结构和算法(Java语言描述)的第一章课后题。 先简化思路,可以先用递归实现数N的二进制表示,先用字符串类型,再用String进行字符对比获取二进制表示中1的个数。 根据数N的获取二进制表示的算法(除2取余,并将余数倒序排列)实现二进制表示原创 2017-06-05 11:48:11 · 1538 阅读 · 0 评论