下载频道  >  xjm199的资源
  • 钢条切割-【算法导论-动态规划】

    对以上的价格表样例,进行模拟切割: r1 = 1,切割方案1 = 1(无切割) r2 = 5,切割方案2 = 2(无切割) r3 = 8, 切割方案3 = 3(无切割) r4 = 10, 切割方案4 = 2 + 2 r5 = 13, 切割方案5 = 2 + 3 r6 = 17, 切割方案6 = 6(无切割) r7 = 18, 切割方案7 = 1 + 6或7 = 2 + 2 + 3 r8 = 22, 切割方案8 = 2 + 6 r9 = 25, 切割方案9 = 3 + 6 r10 = 30,切割方案10 = 10(无切割) 可能现在大家对这种切割比较不耐烦,或者是有的数并不是那么好,怎么办? 这时有个很好的思想,就是动态规划,之前模拟切割尽管结果出来的很简单,但是过程却依然很复杂; 比如r7,它有很多切割方案,1-6,2-5,3-4,2-2-3,1-1-5等等,这些过程如何自己来模拟的话实在是太费时间,但是我们想在切割7的时候前面都已经完成了,我们可以在前面的基础上进行切割,这时只要考虑1-6,2-5,3-4即可,比如现在的1-6就包括了之前的1-1-5,1-2-4等的切割方案;

    2014-04-23
    3
  • 插入排序-《编程珠玑》

    详见:http://blog.csdn.net/xjm199/article/details/22733437 简而言之,就是将一个数据很好的插入已经有序的数列中,当然,依然是递增或是递减; 思想:首先第一个数据肯定是有序的,由第二个数据开始处理,进行插入排序:

    2014-04-01
    3
  • 变位词《编程珠玑》

    若是不明白,详见http://blog.csdn.net/xjm199/article/details/21628091 变位词:一种把某个词或句子的字母的位置(顺序)加以改换所形成的新词,英文叫做anagram,词典把这个词翻译成“变位词”。 书中将这个程序按三个阶段的“管道”组织,其中一个程序的输出文件作为下一个程序的输入文件。第一类程序标识单词,第二个程序排序标识后的文件,而第三个程序将这些单词压缩为每个变位词类一行的形式。

    2014-03-20
    3
  • 位图排序《编程珠玑》

    详见:http://blog.csdn.net/xjm199/article/details/21476491 实现位图排序,其中假设n为10 000 000,且输入文件包含1 000 000个正数;具体细节详见《编程珠玑》第一章问题; 由于数据的大小问题,在这#define N 1000,即数据在1000以内的100个数据,进行排序(当然由于随机数的产生问题,有数重复,在此并未处理);

    2014-03-18
    3
  • 二叉搜索树三种访问方式

    http://blog.csdn.net/xjm199/article/details/20062209 更详细,大家多多交流。 先序遍历:也叫做先根遍历,前序遍历,可记做根左右(二叉树父结点向下先左后右)。首先访问根结点然后遍历左子树,最后遍历右子树。在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树,如果二叉树为空则返回。 即:若二叉树为空则结束返回,否则:(1)访问根结点(2)先序遍历左子树(3)先序遍历右子树 中序遍历:首先遍历左子树,然后访问根结点,最后遍历右子树。在遍历左、右子树时,仍然先遍历左子树,再访问根结点,最后遍历右子树。 即:若二叉树为空则结束返回,否则:(1)中序遍历左子树(2)访问根结点(3)中序遍历右子树 后序遍历:首先遍历左子树,然后遍历右子树,最后遍历访问根结点,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后遍历根结点。 即:若二叉树为空则结束返回,否则:(1)后序遍历左子树(2)后序遍历右子树(3)访问根结点

    2014-02-28
    3
  • 二叉搜索树

    二叉搜索树

    2014-02-27
    3
  • 倒排索引处理文档

    更多精彩:http://blog.csdn.net/xjm199/article/details/18348671 倒排索引(英语:Inverted index),也常被称为反向索引、置入档案或反向档案,是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。 有两种不同的反向索引形式: 1、一条记录的水平反向索引(或者反向档案索引)包含每个引用单词的文档的列表。 2、一个单词的水平反向索引(或者完全反向索引)又包含每个单词在一个文档中的位置。

    2014-01-16
    5
  • 堆排序(最大堆修改版)【算法导论】

    更多精彩:http://blog.csdn.net/xjm199 上个资源的有效排序下标是由1开始的,0只做了填充作用,这次则由下标0为根节点: for(int i = length; i >= 1;) //最后一个肯定是最小的 { temp = A[i]; //交换堆的第一个元素和堆的最后一个元素 A[i] = A[0]; A[0] = temp; i--; //堆的大小减一 MaxHeapIfy(A, i, 0); //调堆 }

    2014-01-08
    3
  • 堆排序最大堆【算法导论】

    更多精彩:http://blog.csdn.net/xjm199 欢迎多多交流 ps:按照书中伪码写成,元素由1开始,故数组中第一位A[0]为填充,并不算在排序中。 for(int i = length; i >= 2;) { temp = A[i]; //交换堆的第一个元素和堆的最后一个元素 A[i] = A[1]; A[1] = temp; i--; //堆的大小减一 MaxHeapIfy(A, i, 1); //调堆 }

    2014-01-08
    3
  • 二十进制数的加法【庞果网英雄会】

    更多精彩:http://blog.csdn.net/xjm199 多多交流.... //start 提示:自动阅卷起始唯一标识,请勿删除或增加。 int main() { printf("%s",calculate("jaa","aa")); return 0; } //end //提示:自动阅卷结束唯一标识,请勿删除或增加。

    2014-01-06
    3
img

关注 私信


用户积分:696