拿到这个问题,我的第一反应是用贪心算法,优先满足不同种类多的,这样打的折扣比价多。但是,看了书中的分析发现,* 我们设定的贪心策略实际上是有问题的, ie 在买 5 + 3 本的时候会出错。 看到这里,书上说可以利用改进…
标签:编程之美
写JAVA程序实现CPU使用率保持在50%(附加画正弦函数)
《编程之美》当中的引子。 如何编程实现控制CPU的使用率维持在50%? 直接分为busy和idle时间。 因为是取平均值,所以两者各占一半,即可实现50%。 笨方法: public static void main(St…
编程之美2.18 数组分割
问题描述:有一个无序、元素个数为2n的正整数数组,要求:如何能把这个数组分割为元素个数为n的两个数组,并使两个子数组之和最接近。 import java.util.Scanner; public class Beauty…
编程之美3.8: 求二叉树中节点的最大距离
问题描述:如果把二叉树看成一个图,父子节点之间的连线看成双向的,定义“距离”为两个节点之间边的个数。求二叉树中相距最远的两个节点的距离。 思路:相距最远的两个节点一定是叶子节点,且这两个叶子节点的路径有三种情况: 最大距…
编程之美1.8:小飞的电梯调度算法
问题:由于楼层并不高,在繁忙时段,每次电梯从一层往上走时,我们只允许停到其中某一层。所有乘客再从这层去往自己的目的楼层。 电梯停在哪一层,能够保证乘客爬楼梯之和最少? import java.util.Scanner; …
《编程之美》读书笔记-CPU占用率
一、.相关函数 1.time_t time(time_t* t);获取机器时间。该函数获取当前距1970年1月1日00:00:00所经历的时间(单位:秒)。包含在头文件<time.h>中。 2.void Sl…
优秀程序员不得不知道的20个位运算技巧
一提起位运算,人们往往想到它的高效性,无论是嵌入式编程还是优化系统的核心代码,适当的运用位运算总是一种迷人的手段,或者当您求职的时候,在代码中写入适当的位运算也会让您的程序增加一丝亮点,最初当我读《编程之美》求“1的数目…
[编程之美]写一个函数,返回一个数组中所有元素被第一个元素除的结果
题目: 写一个函数,返回一个数组中所有元素被第一个元素除的结果; 错误的版本: void DivArray(int *array, int n) { for (int i = 0; i <…
python 编程之美
######################################################################## ## …
Linux编程之errno
原文出处:http://mylinuxbook.com/error-handling-in-c-programming-on-linux/ 本文主要介绍了全局变量errno的用法及相关函数:strerror()、stre…
《编程之美》和《无以言退》
《编程之美》是微软出版的一本书。 看到了昨天的一则博文《编程之美在精益求精之间》,很感兴趣,说实话,很少看到以一种审美…
编程之美(5) 快速找出故障机器
问题聚焦: 每个ID记录有两个备份。 在某个时间,得到一个数据文件ID的列表,快速找出这个表中仅出现一次的ID。 问题转化: 有很多的ID,其中只有一个ID出现的次数小于2,其他正常ID出现的次数都等于2,问如何找到这个…