实现一个算法,对公司员工年龄进行排序,时间效率要求O(n)
2017-03-04 15:35
736 查看
//实现一个算法,对公司员工年龄进行排序,时间效率要求O(n) #include<iostream> void sortAges(int ages[], int length) { if (ages == NULL || length < 0) { return ; } //因为年龄是一个小范围的内,我们可以使用辅助内存 const int oldestAge = 99; int timesOfAge[oldestAge + 1] = {0}; for (int i = 0; i < length; ++i) { int age = ages[i]; if (age<0 || age>oldestAge) { throw new std::exception("age out_of range."); } ++timesOfAge[age]; } int index = 0; for (int i = 0; i <= oldestAge; ++i) { for (int j = 0; j < timesOfAge[i]; ++j) { ages[index] = i; ++index; } } }
相关文章推荐
- 实现一个算法,对公司员工年龄进行排序,时间效率要求O(n)
- 题目:某公司有几万名员工,请完成一个时间复杂度为O(n)的算法对该公司员工的年龄作排序,可使用O(1)的辅助空间。
- 某公司有几万名员工,请完成一个时间复杂度为O(n)的算法对该公司员工的年龄作排序,可使用O(1)的辅助空间
- 算法题目---求公司内员工的年龄排序---用空间换取时间O(n)
- 对公司员工年龄进行排序,java实现
- 公司员工年龄的排序,时间效率为O(n)
- 已知某公司总人数为W,平均年龄为Y岁(每年3月末计算,同时每年3月初入职新人),假设每年离职率为x,x>0&&x<1,每年保持所有员工总数不变进行招聘,新员工平均年龄21岁。 从今年3月末开始,请实现一个算法,可以计算出第N年后公司员工的平均年龄。(最后结果向上取整)。
- 实现一个排序,要求时间效率O(n)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 算法习题49:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)
- 一道看上去很吓人的算法面试题:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)