正确答案: D
题目:对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是( )。
解析:除了堆排序算法的比较次数是O(nlog2n),其他的都是n(n-1)/2。
举一反三的答案和解析:
有以下程序 #include iostream> using namespace std; static int days[]= { 31,28,31,30,31,30,31,31,30,31,30,31 }; class date { private: int month, day, year; public: date( int m, int d, int y ) { month = m; day = d; year = y; } date() {} void disp() { coutyear"-"month"-"dayend1; } date operator+( int day ) { date dt = *this; day+= dt.day; while ( day > days[dt.month - 1 ] ) { day -= days[ dt.month - 1 ]; if ( ++dt.month == 13 ) { dt.month = 1; dt.year++; } } dt.day = day; return dt; }; int main() { date d1( 6, 20, 2004 ), d2; d2: d1 + 20; d2.disp(); return 0; } 执行后的输出结果是