黑马程序员技术交流社区

标题: 今天老师给讲的百度的面试题 [打印本页]

作者: 楠瓜果    时间: 2014-7-19 19:45
标题: 今天老师给讲的百度的面试题
#include <stdio.h>
//    1.定义指针函数实现数组排序(百度)

void printArray(int *array, int len);
// typedef 给数据类型起别名


typedef int (*Pointer)(int a,int b);



int compare(int a,int b)
{
    return a < b;
}

//函数指针作为参数,那个传入的函数是一个回调函数
void selectSort(int *array,int length,Pointer compare)
{

    for (int i = 0; i < length -1; i++) {

        for (int j = i + 1; j < length; j++) {

            if (array < array[j]) {
                int temp = array;
                array = array[j];
                array[j] = temp;
            }



        }
    }
}




int main(int argc, const char * argv[])
{
    int nums[] = {10,8,6,11,12,3};
    int length = sizeof(nums) / sizeof(int);
    printArray(nums, length);
    selectSort(nums, length,compare);
    printArray(nums, length);


    typedef int  Integer;
    Integer num  = 10;
    printf("%d\n",num);


    return 0;
}


void printArray(int *array, int len)
{
    for (int i = 0; i < len; i++) {
        printf("%d ",array);
    }
    printf("\n");
}


作者: fantacyleo    时间: 2014-7-19 20:42
stdlib.h中的qsort就是传函数指针排序的。oc中NSArray排序传block也是这个道理
作者: Devchen    时间: 2014-7-21 19:39
什么老师?
作者: sl7s78s8    时间: 2014-7-21 21:17
感觉我们应该在一个班
作者: 楠瓜果    时间: 2014-7-21 22:35
sl7s78s8 发表于 2014-7-21 21:17
感觉我们应该在一个班

是啊,传智的基础班?
作者: 诸葛佰通    时间: 2014-7-21 23:01
为毛XCODE里面运行你这代码打印出来的很诡异呢。。。
题目是甚麽?
1.定义指针函数实现数组排序(百度)
就这个?
作者: 楠瓜果    时间: 2014-7-21 23:26
诸葛佰通 发表于 2014-7-21 23:01
为毛XCODE里面运行你这代码打印出来的很诡异呢。。。
题目是甚麽?
1.定义指针函数实现数组排序(百度)

是的,具体反正就是这样
作者: 阳光地带    时间: 2014-7-21 23:27
楠瓜果 发表于 2014-7-21 23:26
是的,具体反正就是这样

你五号去就业班,还是继续在基础班?基础班已经开始啦?
作者: sl7s78s8    时间: 2014-7-22 21:06
楠瓜果 发表于 2014-7-21 22:35
是啊,传智的基础班?

恩,我也是基础班的,就感觉这题目似曾相识....
作者: 愿望    时间: 2014-7-22 21:09
已经上课了么》
作者: 楠瓜果    时间: 2014-7-23 01:00
sl7s78s8 发表于 2014-7-22 21:06
恩,我也是基础班的,就感觉这题目似曾相识....

哈哈,那是同学喽




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2