博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三章再续:伴随数组求数组中给定下标区间内的第K小(大)元素
阅读量:4135 次
发布时间:2019-05-25

本文共 558 字,大约阅读时间需要 1 分钟。

思想很巧妙,

#include 
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;struct node{ int num,data; bool operator < (const node &p) const { return data < p.data; } }; node p[100001]; int main() { int n=100; int i,j,a,b,c; for(i=1;i<=n;i++) { p[i].data =n-i+1; p[i].num = i; } sort(p+1,p+1+n); //调用库函数sort完成排序,复杂度n*logn a=2; b=10; c=5; for(i=1;i<=n;i++) //扫描一遍,复杂度n { if(p[i].num>=a && p[i].num<=b) c--; if(c == 0) break; } printf("%d\n",p[i].data); return 0; }

转载地址:http://bbvvi.baihongyu.com/

你可能感兴趣的文章