摘要: 主要就是参照百度百科来的,本文目的是自己学习备忘。问题描述:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高。测试数据:1物品数 5, 背包容量 100, 重量及价格77 92 22 22 29 87 50 46 99 902物品数 8, 背包容量 200, 重量及价格 79 83 58 14 86 54 11 79 28 72 62 52 15 48 68 62解法1,dp方法(同时打印出选了哪些物品1表示选,0表示不选):#include <stdio.h>#define N 5#define ... 阅读全文
posted @ 2011-08-10 23:27 jialejiahi 阅读(249) 评论(0) 推荐(0) 编辑
摘要: /*基数排序又称桶排序,原理是按照每一位分别进行排序,时间复杂度较低,适用于顺序和链式存储结构*/#include <stdio.h>#define D 2 //最大位数#define N 7 //数据个数int main (){ int buk[10][N] = { 0 };//存放按一位排序后数据的桶 int in_len[10] = { 0 };//存放按位放到桶中的数,每一位分别有多少个 int data[N] = { 15, 8, 21, 19, 30, 5, 0 }; int i, j, k, m, n; int lsb; lsb = i = j = k = m = n 阅读全文
posted @ 2011-08-10 21:31 jialejiahi 阅读(301) 评论(0) 推荐(1) 编辑