zoukankan      html  css  js  c++  java
  • 【必做1】结对编程—词频统计

    一、结对编程

          *结对对象:1413042065冯越

         *博客地址:http://www.cnblogs.com/fengyue1206/

         *Github链接:https://github.com/superyy/YY1/blob/master/4main.cpp

         *贡献比例:各50%

         *结对照片: 

                        

    二、目标

          *代码复审练习,结对练习,编写单元测试

         *开发工具:CodeBlocks

         *开发语言:C++

    三、要求 

         基于作业3的结果,读取一个较小的文本文件A_Tale_of_Two_Cities.txt,统计该文件中的单词的频率,并将统计结果输出到当前目录下的 Result1.txt 文件。

         此外, 读取一个较大的文本文件Gone_with_the_wind.txt实验对比程序执行效率,做如下改进,比较改进前后程序执行时间。

    四、部分源码及运行结果

         在冯越作业3的代码基础上,新增了冒泡排序算法和文件流的输出:

    void BubbSort(Word*word,int size)
    {
        float t;
        for(int i=1;i<size;i++)
            for(int j=0;j<size-j;j++)
                if(word[j].size>word[j+1].size)
                {
                    t=word[j].size;
                    word[j].size=word[j+1].size;
                    word[j+1].size=t;
                }
    }
    
    ofstream out("D:\result.txt");
            out<<result[i];
            out.close();
    

    运行结果:                                                      

                  

    五、困难与解决

          一开始本来使用的是选择排序,成功率为0,后来又选择了冒泡排序,并参考了C++书。

    六、总结与收获

          这是第一次尝试结对编程,感觉还蛮不错的。“寸有所短,尺有所长”,两个人的组合果然大大的降低了错误的发生率,提高了效率。注重细节的,能减少低级错误的发生;看中整体的,能从大方向上把握。尽管是对前面作业的复审与再编,但是通过这次作业也改正了个人编程时的一些不良习惯,汲取了小伙伴身上的优点,互惠互利吧。尽管在编程时我们会各执己见,但这也算是另一种收获吧。

          同时,我也体验到了代码复审的好处。它能让我调整前面的错误,优化完善程序,提高程序的性能。虽说是一次小小的练习,但我想我会把复审应用在以后的编程中的,毕竟经常复审复审也许能提高自我的能力呢!

         

       

        

        

  • 相关阅读:
    POJ2286 The Rotation Game
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
  • 原文地址:https://www.cnblogs.com/jiangjinjin/p/5307385.html
Copyright © 2011-2022 走看看