由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - C++ Q41: std::sort (C4)
相关主题
C++相关的面经离奇的Amzaon第一轮电面
Amazon面经中国人面试果然很好人
O(N) sort integer arrayC++里get array size的问题
一个实际的排序问题C++ Q21: size of virtual table
find k missing numbers in range [0, N].C++ Q35: sizeof() (B20_20)
请教一个题,不太容易,要O(n)C++ Q58: size of pointer (Bloomberg)
请教一道题砸了面试,发面题
一道 C++ 的题。Apple的一些C++概念题
相关话题的讨论汇总
话题: sort话题: std话题: 1000话题: sortint
进入JobHunting版参与讨论
1 (共1页)
c**********e
发帖数: 2007
1
How do you use STL's std::sort algorithm to sort an array declared as int v[
1000]?
a) std::sort(v);
b) std::sort(v,v+1000);
c) std::sort((void*)v, 1000, sizeof(int), sortInt);
(assuming sortInt is defined properly)
d) std::sort((void*)v,(void*) &v+1000, sizeof(int));
e) std::sort(v.begin(),v.end());
h**6
发帖数: 4160
2
b
c**********e
发帖数: 2007
3
You are right. But could you please explain a little bit.

【在 h**6 的大作中提到】
: b
s*********t
发帖数: 1663
4
read the signiture of sort..
only thing worth mention here is: v + 1000 correspond to v's end() since v h
as a type of int.

【在 c**********e 的大作中提到】
: You are right. But could you please explain a little bit.
h**6
发帖数: 4160
5
说实话,这理由还真不好说,一直都是这么用的。
如果v是一个vector,那么应该用 std::sort(v.begin(),v.end()) 进行排序。
作为数组,数组名 v 同时也表示第一个元素的地址,相当于 v.begin(),而 v+1000 则是最后一个元素之后的地址,相当于 v.end()
s*********t
发帖数: 1663
6
xixi
I was first

则是最后一个元

【在 h**6 的大作中提到】
: 说实话,这理由还真不好说,一直都是这么用的。
: 如果v是一个vector,那么应该用 std::sort(v.begin(),v.end()) 进行排序。
: 作为数组,数组名 v 同时也表示第一个元素的地址,相当于 v.begin(),而 v+1000 则是最后一个元素之后的地址,相当于 v.end()

c**********e
发帖数: 2007
7
Thank both of you, very much.
M******q
发帖数: 94
8
sort() takes RandomAccessIterator, which is just a template parameter name.
As long as the argument of sort() support what RandomAccessIterator is supp
osed to support, sort() should work. Quotes from "thinking in c++ volume 2
":
RandomAccessIterator. This type of iterator supports all the operations that
a regular pointer does: you can add and subtract integral values to move it
forward and backward by jumps (rather than just one element at a time), you
can subscript it with operator[ ], you

【在 h**6 的大作中提到】
: 说实话,这理由还真不好说,一直都是这么用的。
: 如果v是一个vector,那么应该用 std::sort(v.begin(),v.end()) 进行排序。
: 作为数组,数组名 v 同时也表示第一个元素的地址,相当于 v.begin(),而 v+1000 则是最后一个元素之后的地址,相当于 v.end()

1 (共1页)
进入JobHunting版参与讨论
相关主题
Apple的一些C++概念题find k missing numbers in range [0, N].
C++ Q: sizeof请教一个题,不太容易,要O(n)
C++问题请教一道题
C++问题3一道 C++ 的题。
C++相关的面经离奇的Amzaon第一轮电面
Amazon面经中国人面试果然很好人
O(N) sort integer arrayC++里get array size的问题
一个实际的排序问题C++ Q21: size of virtual table
相关话题的讨论汇总
话题: sort话题: std话题: 1000话题: sortint