求一个数据序列的逆序数量不可以通过( )排序中增加1个计数器实现。提示: 一个排列含有逆序的个数称为这个排列的逆序数。例如排列 263451 含有8个逆序(2,1),(6,3),(6,4),(6,5),(6,1),(3,1),(4,1),(5,1),因此该排列的逆序数就是8。
A. 树形选择排序
B. 冒泡排序
C. 归并排序
D. 插入排序
将关键字(46,79,56,33,40,90)按从小到大排列,则利用堆排序的方法建立的初始堆为( )
A. 90,79,56,33,40,46
B. 79,46,56,33,40,90
C. 90,79,56,46,40,33
D. 90,46,79,33,40,56
如下代码是在链表中删除节点,请补充完整,并填写在如下括号void delete_node(NODE *head,int i){NODE *q;NODE *p;int n=0;q=head;while( ——————————){q=q->link;n++;}if(i>0&&q->link!=NULL){p=q->link;( ——————————);free(p);printf("delete node is success!\n");}}