zoukankan      html  css  js  c++  java
  • 日记4

    1、将元素“42,30,74,56,15,60”依次插入开始为空的检索树,那么不成功查找的平均查找长度为 3 (21/7),不成功的结点为7,2×2+3×3+2×4=21;

    2、具有5层结点的AVL树至少有 12 个结点 

    3、时间复杂度不受数据初始状态影响而恒为O(nlogn)的是 堆排序

    4、高为h的m元树(m≥2, h≥1)中结点总数n<=(mh-1)/(m-1)

    5、已知一棵二叉树的先序序列是A,B,C,D,E,F,G,和整数序列3,0,0,6,0,0,0。其中,整数序列中的第i个数,表示先序序列第i个结点的右儿子在先序序列中的序号(序号从1编起,0表示无右儿子)。请问此二叉树中以结点D为根的子树的结点个数为 4

    6、就排序算法所用的辅助空间而言,堆排序、快速排序、归并排序的关系是,堆排序<快速排序<归并排序

    7、二维数组A的元素都是6个字符组成的串,行下标i的范围从0到8,列下标j的范围从1到10,则A的第8列和第5行共占108个字节,第8列9个元素,第5行10个元素,共9+10-1个元素,18×6==108;

    8、设一棵二叉树的结点个数为18,则它的高度至少为 5,2h-1,24-1==15

    9、在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是,直接插入排序;

    10、对关键字序列(56,23,78,92,88,67,19,34)进行增量为3的一趟希尔排序的结果为(19,23,67,56,34,78,92,88);56,92,19;23,88,34;78,67;增量为3的,三组分别排序;一趟后,结果19,23,67,56,34,78,92,88;

    11、采用排序算法对n个元素进行排序,其排序趟数肯定为n-1趟的排序方法是,直接选择和插入 ;A 直接插入和快速排序,B 冒泡和快速排序,C 直接选择和堆排序,D 直接选择和插入排序

    12、设有5000个待排序的记录关键字,如果需要用最快的方法选出其中最小的10个记录关键字,则用下列( 堆排序 )方法可以达到此目的,A 快速排序,B 直接选择排序,C 归并排序,D 堆排序;

    13、在对n个元素进行选择排序的过程中,第i趟需从 n-i+1 个元素中选出最小值元素;第i趟,是从1开始计算的,没有第0趟,第一趟即 n-1+1,从n个元素中选择;

    14、c++,string 类对象str,str.erase(remove_if(str.begin(), str.end(), ispunct), str.end()); ,其中string类的成员函数erase,begin,end;remove_if函数包含在<algorithm>头文件,ispunct函数包含在<cctype>头文件,<iostream>包含<cctype>头文件;

    #include <iostream>
    #include <map>
    #include <string>
    #include <algorithm>
    using namespace std;
    
    /*单词计数器 */
    
    string& strip(string &str)
    {
        for (auto &ch : str)     
            ch = tolower(ch);// 转成小写
        str.erase( remove_if ( str.begin(), str.end(), static_cast<int(*)(int)>(&ispunct) ), str.end());
    
        return str;
    };
    
    std::map<std::string, std::size_t> count()
    {
        std::map<std::string, std::size_t> counts;
        for (string w; cin >> w; ++counts[strip(w)])
            ;
        return counts;
    }
    
    void println(std::map<std::string, std::size_t> const &m)
    {
        for (auto const &kv : m)
        {
            cout << kv.first << " -- " << kv.second << endl;
        }
    } 
    
    int main()
    {
        println(count());
        cin.clear(); 
        return 0;
    }
    View Code
  • 相关阅读:
    [C++知识点]2015.4.18
    [COCOS2DX]第一个开源项目的部署和运行<win32版本>
    [COCOS2DX]交叉编译实践+速度优化(vs2012修改win32代码+修改makefile+编译安卓项目包+部署安卓项目包到Eclipse+运行apk)
    [COCOS2DX]COCOS命令新建项目+编译安卓项目并成功运行
    [COCOS2DX]官网helloworld在VS2012中的部署
    【转】int const A::func()和int A::func() const
    【转】Singleton单例模式
    【转】java静态代码块和构造方法执行顺序
    小程序加入阿拉丁统计
    关于固定footer的用法
  • 原文地址:https://www.cnblogs.com/GoldenEllipsis/p/12909822.html
Copyright © 2011-2022 走看看