05 2012 档案

摘要:今天在水母算法版看到一道题,挺有意思,题目描述如下: 题目: 一个数组arr[],大小为n,给其中每个元素一个编号(编号范围为1至n-1,且没有重复的编号),编号放在nums[]数组中且一一对应,比如arr[0]的编号为nums[0],arr[1]的新地址为nums[1]。。。要求: 在O(1)的辅助空间下对数组按其编号从小到大进行排序sample: arr={a,b,c,d,e} nums={2,0,3,1,4} output: arr={b,d,a,c,e} 简单分析: 对编号进行排序,排序过程中对arr数组进行同步调整,不过该方法的时间复杂度是O(N*lg(... 阅读全文
posted @ 2012-05-24 01:46 beyond_boy 阅读(1097) 评论(0) 推荐(1)
摘要:1.指针数组和数组指针指针数组 形如type *ptr_arr[n] ,根据C语言声明规则,[]的优先级比*的优先级高,因此ptr_arr先和[]结合生成一个数组,表明此时ptr_arr是一个数组,然后再和*结合。整个表达式表示数组元素为type*类型的一个一维数组。数组指针 形如 type (*arr_ptr)[n],根据C语言声明规则,由于增加括号,app_ptr先和*结合生成一个指针,整个表达式表明arr_ptr是一个指向type类型的一个一维数组的指针。 用法:一般用来指向操作二维数组中的一维数组,如: type *arr[m][n]; arr_ptr=arr... 阅读全文
posted @ 2012-05-19 12:53 beyond_boy 阅读(108) 评论(0) 推荐(0)