• 腾讯笔试题


    1.定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句

    #define MAX(a,b) (abs((a)-(b))==((a)-(b))?(a):(b))

    2.10 个数放入模 10hash 链表,最大长度是多少答案是10
    按题目说的,hash值的计算方法是模10,那么可能的取值是0,1,2,3,4,5,6,7,8,9 最理想的情况是每个数对应一个hash值,这样的长度就为1,最坏的情况是10个数只对应一个hash值,
    则长度为10,如:10,20,30,40,50,60,70,80,90,100这十个数就只对应了hash值0。

    3.fun((exp1,exp2),(exp3,exp4,exp5))有几个实参5个,这里没有什么疑问的!
    从形式上看很看是两个的,因为有二个为一组做为一个对象,有三个为一组做为一个对象,共有两个.所以应该说是两个,而从我的感觉当中这样是不对的,因为在JS中不存在(exp1,exp2)
    这样的定义方法,他不是{1,2}而是(1,2),而且()的做用除了VB中的索引外,在JS中只是改变了运算符的优先顺序,而这里改变的显然是,运算符的优选顺序,而,运算本身的优选顺序是自左向右,
    所以这里除了改变顺序达到一个特殊目的,但如果不考虑这个特殊目的,那么,加了括号跟不加是没有区别的.所以这里的参数是五个而不是两个!
    当然你完全可以做一个验证:定义一个有五个形参的函数,然后加括号传值,看一下是否成功!

    4.

    希尔 冒泡 快速 插入 哪个平均速度最快

    快速排序平均情况较快,平均复杂度也最低O(n),但对于有序度较高的不如并归排序和希尔排序,冒泡和插入是一个复杂度的O(n^2),效率还是比较低是

    快速排序(Quicksort)是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列

    希尔排序法先取一个正整数d1<n,把所有序号相隔d1的数组元素放一组,组内进行直接插入排序;然后取d2<d1,重复上述分组和排序操作;直至di=1,即所有记录放进一个组中排序为止

    1 a[3][4]哪个不能表示 a[1][1]: *(&a[0][0]+5) *(*(a+1)+1) *(&a[1]+1) *(&a[0][
    0]+4)
    答案: *(&a[1]+1)
    a是数组的首地址,a[1]就表示a[1][0]地址了,不用再取地址了。

    2 fun((exp1,exp2),(exp3,exp4,exp5))有几个实参?
    答案:两个。
    形式参数:在声明和定义函数时,写在函数名后的括号中的参数。
    实参是调用参数中的变量,行参是被调用函数中的变量。

    3. 希尔 冒泡 快速 插入 哪个平均速度最快?
    答案:快速排序
    快速排序、归并排序和基数排序在不同情况下都是最快最有用的。

    4. enum的声明方式
    答案:enum 枚举类型名 {
    枚举常量1,
    枚举常量2,

    枚举常量n
    };
    For example:
    enum weekday { sunday, monday, tuesday, wednesday, thursday, friday, saturda
    y};
    enum weekday week_day;//week_day 就是一个枚举类型变量

  • 相关阅读:
    Travis CI Could not find or load main class org.gradle.wrapper.GradleWrapperMain 错误
    HyperSQL 链接参数中文件的路径
    Maven 在 pom.xml 文件中配置 repositories 仓库
    Flyway Validate failed: Migration checksum mismatch for migration version 1.0.0.01 错误
    Angular 服务
    Angular 主从组件
    Angular 显示英雄列表
    Angular 英雄示例教程
    L2-002. 链表去重---模拟
    HDU2057
  • 原文地址:https://www.cnblogs.com/mood3604/p/3315120.html
Copyright © 2020-2023  润新知