Cho một mảng và số k trong đó k nhỏ hơn kích thước của mảng. Tìm phần tử nhỏ nhất K K trong mảng đã cho. Cho rằng tất cả các yếu tố mảng là khác biệt.K where K is smaller than the size of the array. Find the K’th smallest element in the given array. Given that all array elements are distinct.
Examples:
Đầu vào: mảng [] = {7, 10, 4, 3, 20, 15}, k = 3 & nbsp; đầu ra: 7: arr[] = {7, 10, 4, 3, 20, 15}, K = 3
Output: 7Đầu vào: mảng [] = {7, 10, 4, 3, 20, 15}, k = 4 & nbsp; đầu ra: 10 & nbsp;: arr[] = {7, 10, 4, 3, 20, 15}, K = 4
Output: 10
Chúng tôi đã thảo luận về một vấn đề tương tự với các yếu tố lớn nhất. & NBSP;
Phần tử nhỏ nhất K K
Sắp xếp mảng đã cho và trả về phần tử tại Index K-1 trong mảng được sắp xếp. & NBSP;
Thực hiện theo các bước đã cho để giải quyết vấn đề:
- Sắp xếp mảng đầu vào theo thứ tự ngày càng tăng
- Trả lại phần tử tại chỉ mục K-1 [chỉ mục dựa trên 0] trong mảng được sắp xếp
Dưới đây là việc thực hiện phương pháp trên:
C
#include
#include
int
cmpfunc[
const
K'th smallest element is 53
K'th smallest element is 54
K'th smallest element is 55
K'th smallest element is 56
int
____K'th smallest element is 58
int
__K'th smallest element is 51
int
K'th smallest element is 53
int
K'th smallest element is 55
int
K'th smallest element is 57
int
K'th smallest element is 59
K'th smallest element is 53
K'th smallest element is 54
#include
2#include
3#include
4#include
5int
#include
7K'th smallest element is 54
K'th smallest element is 55
#include
0K'th smallest element is 51
int
#include
3
K'th smallest element is 53
K'th smallest element is 54
int
#include
7K'th smallest element is 54
int
int
0#include
4int
2#include
4int
4K'th smallest element is 54
int
6#include
5int
8int
9cmpfunc[
0cmpfunc[
1
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
4K'th smallest element is 51
C++
cmpfunc[
6
cmpfunc[
7 cmpfunc[
8 cmpfunc[
9
int
K'th smallest element is 53
int
K'th smallest element is 55
int
K'th smallest element is 57
int
K'th smallest element is 59
K'th smallest element is 53
K'th smallest element is 54
void
0K'th smallest element is 54
K'th smallest element is 55
#include
0K'th smallest element is 51
int
#include
3
K'th smallest element is 53
K'th smallest element is 54
int
#include
7K'th smallest element is 54
int
int
0#include
4int
2#include
4int
4K'th smallest element is 54
* a,
9K'th smallest element is 500
K'th smallest element is 501
K'th smallest element is 502
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
4K'th smallest element is 51
K'th smallest element is 5
1
cmpfunc[
7 cmpfunc[
8 cmpfunc[
9
Java
K'th smallest element is 507
K'th smallest element is 508
K'th smallest element is 507
K'th smallest element is 510
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
K'th smallest element is 523
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
int
K'th smallest element is 517
int
K'th smallest element is 59
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
K'th smallest element is 55
K'th smallest element is 526
K'th smallest element is 527
K'th smallest element is 528
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 522
K'th smallest element is 558
K'th smallest element is 500
K'th smallest element is 560
K'th smallest element is 561
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Python3
K'th smallest element is 5222
K'th smallest element is 539
K'th smallest element is 540
K'th smallest element is 541
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
K'th smallest element is 568
K'th smallest element is 522
int
K'th smallest element is 554
K'th smallest element is 555
K'th smallest element is 556
K'th smallest element is 565
K'th smallest element is 566
K'th smallest element is 54
K'th smallest element is 55
K'th smallest element is 571
K'th smallest element is 572
K'th smallest element is 527
K'th smallest element is 574
K'th smallest element is 575
K'th smallest element is 576
K'th smallest element is 577 ____177
K'th smallest element is 579
K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 582
K'th smallest element is 577
K'th smallest element is 584
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
K'th smallest element is 505
#include
5K'th smallest element is 507
int
9K'th smallest element is 509
K'th smallest element is 510
C#
K'th smallest element is 54
K'th smallest element is 596
K'th smallest element is 577
K'th smallest element is 598
K'th smallest element is 599
K'th smallest element is 507
K'th smallest element is 508
K'th smallest element is 507
K'th smallest element is 510
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
K'th smallest element is 527
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
int
K'th smallest element is 517
int
K'th smallest element is 59
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
K'th smallest element is 55
K'th smallest element is 526
K'th smallest element is 527
K'th smallest element is 528
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 522
K'th smallest element is 550
K'th smallest element is 551
K'th smallest element is 5222
K'th smallest element is 539
K'th smallest element is 540
K'th smallest element is 541
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
K'th smallest element is 5
22int
K'th smallest element is 5
54K'th smallest element is 5
55K'th smallest element is 5
56
K'th smallest element is 559
K'th smallest element is 565
K'th smallest element is 566
K'th smallest element is 53
K'th smallest element is 54
K'th smallest element is 570
K'th smallest element is 562
K'th smallest element is 572
K'th smallest element is 54
K'th smallest element is 55
K'th smallest element is 571
K'th smallest element is 572
K'th smallest element is 527
K'th smallest element is 574
K'th smallest element is 51
K'th smallest element is 575
K'th smallest element is 576
K'th smallest element is 577 ____177
K'th smallest element is 579
K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 582
K'th smallest element is 577
K'th smallest element is 584
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
K'th smallest element is 596
K'th smallest element is 577
K'th smallest element is 598
K'th smallest element is 599
K'th smallest element is 54______2017177
K'th smallest element is 555
#include
05
cmpfunc[
7 K'th smallest element is 5
12
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
int
K'th smallest element is 53
K'th smallest element is 54
#include
10K'th smallest element is 54
K'th smallest element is 55
#include
0K'th smallest element is 51
K'th smallest element is 54
#include
16K'th smallest element is 54
#include
18int
#include
3
K'th smallest element is 5
4int
#include
7
K'th smallest element is 5
K'th smallest element is 5
4int
int
0#include
4int
2#include
4int
4O[N log N]
Auxiliary Space: O[1]
K'th smallest element is 5
4K'th smallest element is 5
5 cmpfunc[
4
K'th smallest element is 51
Thực hiện theo các bước đã cho để giải quyết vấn đề:
- Chèn tất cả các phần tử mảng vào tập hợp
- Tiến lên trình lặp đến phần tử KTH trong tập hợp
- Trả về giá trị của phần tử mà tại đó iterator đang trỏ
Dưới đây là việc thực hiện phương pháp trên:
C++
cmpfunc[
6
cmpfunc[
7 cmpfunc[
8 cmpfunc[
9
int
#include
3
K'th smallest element is 53
K'th smallest element is 54
int
#include
7K'th smallest element is 54
int
int
0#include
4int
2#include
4#include
39K'th smallest element is 54
int
#include
42K'th smallest element is 54
#include
44int
#include
46K'th smallest element is 54
#include
44int
#include
50K'th smallest element is 54
#include
52K'th smallest element is 54
#include
54#include
55K'th smallest element is 556
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
4K'th smallest element is 51
Java
K'th smallest element is 507
#include
62K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 5222
int
#include
74K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 522
int
#include
87K'th smallest element is 522
int
K'th smallest element is 554
#include
91K'th smallest element is 556
K'th smallest element is 522
#include
94K'th smallest element is 522
#include
96K'th smallest element is 540
#include
98K'th smallest element is 522
#include
00 #include
5int
#include
03#include
04#include
05#include
06#include
07
K'th smallest element is 522
#include
09K'th smallest element is 522
#include
11 #include
12#include
04#include
14#include
06#include
16
#include
06#include
94
K'th smallest element is 522
#include
20K'th smallest element is 522
#include
22K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Python3
K'th smallest element is 575
K'th smallest element is 576
K'th smallest element is 577 ____177
K'th smallest element is 579
K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 582
K'th smallest element is 577
K'th smallest element is 584
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
K'th smallest element is 596
K'th smallest element is 577
K'th smallest element is 598
K'th smallest element is 599
K'th smallest element is 54______2017177
#include
91K'th smallest element is 54
#include
56K'th smallest element is 577
#include
58K'th smallest element is 599
K'th smallest element is 54
#include
00 #include
62#include
63 #include
64K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 501
K'th smallest element is 577
K'th smallest element is 577
K'th smallest element is 527
K'th smallest element is 580
#include
06
K'th smallest element is 505
#include
74#include
06#include
76
K'th smallest element is 522
K'th smallest element is 501
K'th smallest element is 572
K'th smallest element is 577
K'th smallest element is 527
C#
cmpfunc[
7
K'th smallest element is 512
cmpfunc[
7 #include
85
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
97K'th smallest element is 5222
int
#include
74K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 522
int
#include
87K'th smallest element is 522
int
K'th smallest element is 554
#include
91K'th smallest element is 556
K'th smallest element is 522
#include
96K'th smallest element is 540
#include
98K'th smallest element is 522
#include
00 #include
5int
#include
03#include
04#include
05
K'th smallest element is 522
K'th smallest element is 53
K'th smallest element is 522
#include
11 #include
12#include
04#include
14int
31int
32
int
31#include
76
K'th smallest element is 556
#include
06
K'th smallest element is 51
#include
06#include
94
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
K'th smallest element is 5
75 K'th smallest element is 5
76K'th smallest element is 5
77 ____177 K'th smallest element is 5
79K'th smallest element is 5
80 O[N*log N]
Auxiliary Space: O[N]
K'th smallest element is 5
4K'th smallest element is 5
82K'th smallest element is 5
77 K'th smallest element is 5
84K'th smallest element is 5
42K'th smallest element is 5
43__
K'th smallest element is 5
4K'th smallest element is 5
96K'th smallest element is 5
77 K'th smallest element is 5
98K'th smallest element is 5
99
K'th smallest element is 54______2017177#include
91
Thực hiện theo các bước đã cho để giải quyết vấn đề:
K'th smallest element is 5
4#include
56K'th smallest element is 5
77#include
58K'th smallest element is 5
99K'th smallest element is 5
4#include
00#include
62#include
63#include
64K'th smallest element is 5
222K'th smallest element is 5
75K'th smallest element is 5
01K'th smallest element is 5
77K'th smallest element is 5
77K'th smallest element is 5
27K'th smallest element is 5
80
Dưới đây là việc thực hiện phương pháp trên:
C++
int
45
int
46
cmpfunc[
7 cmpfunc[
8 cmpfunc[
9
int
#include
3
K'th smallest element is 54
int
#include
7K'th smallest element is 54
int
int
60K'th smallest element is 54
int
int
0#include
4int
2#include
4#include
39K'th smallest element is 54
int
#include
42K'th smallest element is 514
K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
4Java
K'th smallest element is 507
#include
62K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 5222
int
#include
74K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 522
int
#include
87K'th smallest element is 551
K'th smallest element is 522
int
K'th smallest element is 554
#include
91K'th smallest element is 556
K'th smallest element is 53
K'th smallest element is 54
cmpfunc[
17K'th smallest element is 54
cmpfunc[
19K'th smallest element is 522
#include
96K'th smallest element is 540
#include
98K'th smallest element is 522
#include
00 #include
5int
#include
03#include
04#include
05K'th smallest element is 522
#include
11 #include
12#include
04#include
14K'th smallest element is 522
cmpfunc[
29K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
K'th smallest element is 575
K'th smallest element is 576
K'th smallest element is 577 ____177
K'th smallest element is 579
K'th smallest element is 580
K'th smallest element is 53
K'th smallest element is 54
K'th smallest element is 582
K'th smallest element is 577
K'th smallest element is 584
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
K'th smallest element is 596
K'th smallest element is 577
K'th smallest element is 598
K'th smallest element is 599
K'th smallest element is 54______2017177
#include
91K'th smallest element is 54
#include
56K'th smallest element is 577
#include
58K'th smallest element is 599
K'th smallest element is 522
cmpfunc[
49K'th smallest element is 522
cmpfunc[
51K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
cmpfunc[
55K'th smallest element is 54
#include
00 #include
62#include
63 #include
64K'th smallest element is 51
K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 501
K'th smallest element is 577
K'th smallest element is 577
K'th smallest element is 527
K'th smallest element is 580
K'th smallest element is 53
K'th smallest element is 54
int
cmpfunc[
67K'th smallest element is 54
int
cmpfunc[
70K'th smallest element is 54
int
cmpfunc[
73K'th smallest element is 54
K'th smallest element is 575
cmpfunc[
76K'th smallest element is 522
cmpfunc[
78K'th smallest element is 54
K'th smallest element is 575
cmpfunc[
81K'th smallest element is 522
cmpfunc[
83K'th smallest element is 54
K'th smallest element is 575
cmpfunc[
86K'th smallest element is 522
cmpfunc[
88K'th smallest element is 522
cmpfunc[
90K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
void
int
51int
5553int
cmpfunc[
99
K'th smallest element is 53
K'th smallest element is 54
int
const
03K'th smallest element is 54
const
05K'th smallest element is 54
const
07K'th smallest element is 51
int
K'th smallest element is 53
int
K'th smallest element is 55
int
K'th smallest element is 57
int
K'th smallest element is 59
K'th smallest element is 53
K'th smallest element is 54
const
19K'th smallest element is 54
#include
00 #include
5int
const
24K'th smallest element is 522
const
26K'th smallest element is 54
K'th smallest element is 55
const
29K'th smallest element is 51
int
#include
3
K'th smallest element is 53
K'th smallest element is 54
int
#include
7K'th smallest element is 54
int
int
0#include
4int
2#include
4int
4K'th smallest element is 54
* a,
9K'th smallest element is 500
K'th smallest element is 501
K'th smallest element is 502
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
4K'th smallest element is 51
Java
K'th smallest element is 507
#include
62K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 511
int
57K'th smallest element is 5222____5______762
K'th smallest element is 522
int
int
63K'th smallest element is 522
int
int
66K'th smallest element is 522
int
int
82int
int
84K'th smallest element is 55
K'th smallest element is 522
int
int
89__K'th smallest element is 522
int
int
96__K'th smallest element is 522
int
cmpfunc[
06K'th smallest element is 55
void
06#include
04void
08K'th smallest element is 522
void
void
11int
void
13K'th smallest element is 522
K'th smallest element is 53
#include
06void
17void
18#include
04void
20
#include
06void
22#include
04
K'th smallest element is 572
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
int
70int
int
72int
cmpfunc[
14K'th smallest element is 522
K'th smallest element is 53
#include
06cmpfunc[
17
#include
06cmpfunc[
19
Các
#include
06#include
11 void
48#include
04#include
14
int
31void
52
int
31cmpfunc[
29
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
int
void
61K'th smallest element is 522
K'th smallest element is 53
#include
06
K'th smallest element is 575
void
66#include
04K'th smallest element is 567
int
31
K'th smallest element is 55
void
71#include
06int
void
74#include
04
K'th smallest element is 528
#include
06
K'th smallest element is 575
void
79K'th smallest element is 527
#include
14int
31void
06#include
04void
85
K'th smallest element is 527
K'th smallest element is 528
int
31void
22#include
04
K'th smallest element is 572
#include
06
K'th smallest element is 51
#include
06cmpfunc[
55
#include
06
K'th smallest element is 55
cmpfunc[
58K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
void
void
22int
cmpfunc[
63K'th smallest element is 522
K'th smallest element is 53
#include
06int
cmpfunc[
67
#include
06int
cmpfunc[
70
#include
06int
cmpfunc[
73
#include
06
K'th smallest element is 575
cmpfunc[
76int
31cmpfunc[
78
#include
06
K'th smallest element is 575
cmpfunc[
81int
31cmpfunc[
83
#include
06
K'th smallest element is 575
cmpfunc[
86int
31int
* a,
32
int
31* a,
34
int
31* a,
36
int
31* a,
38
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 551
K'th smallest element is 54
int
K'th smallest element is 53
int
K'th smallest element is 55
int
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
* a,
57K'th smallest element is 540
* a,
59K'th smallest element is 522
#include
00 #include
5int
#include
03#include
04* a,
666K'th smallest element is 527
* a,
68#include
06const
26
K'th smallest element is 5222____15
const
29K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
* a,
85K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 522
int
* a,
98K'th smallest element is 555
K'th smallest element is 556
K'th smallest element is 5222____10022140
K'th smallest element is 5004
K'th smallest element is 522
K'th smallest element is 558
K'th smallest element is 500
K'th smallest element is 560
K'th smallest element is 5009
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Python3
K'th smallest element is 511
K'th smallest element is 5014
K'th smallest element is 54
K'th smallest element is 565
K'th smallest element is 5017
K'th smallest element is 5018
K'th smallest element is 5019
K'th smallest element is 5222
K'th smallest element is 5018
K'th smallest element is 5022222177
K'th smallest element is 5024
K'th smallest element is 5222
K'th smallest element is 5018
K'th smallest element is 5027
K'th smallest element is 577
K'th smallest element is 5029
K'th smallest element is 5222
K'th smallest element is 5018
K'th smallest element is 5032
K'th smallest element is 577
K'th smallest element is 5034
K'th smallest element is 5222
int
16K'th smallest element is 577
K'th smallest element is 522
#include
11 K'th smallest element is 5050
K'th smallest element is 577
#include
04K'th smallest element is 580
#include
06
K'th smallest element is 5018
K'th smallest element is 5056
#include
06int
16
K'th smallest element is 572
K'th smallest element is 577
K'th smallest element is 527
K'th smallest element is 54
K'th smallest element is 565
int
82K'th smallest element is 5018
K'th smallest element is 5066
K'th smallest element is 5222
K'th smallest element is 55
K'th smallest element is 5069
K'th smallest element is 572
K'th smallest element is 54
K'th smallest element is 565
int
89K'th smallest element is 5018
K'th smallest element is 5066
K'th smallest element is 5222
K'th smallest element is 55
K'th smallest element is 555
K'th smallest element is 5083
int
16K'th smallest element is 5085
K'th smallest element is 54
K'th smallest element is 565
int
96K'th smallest element is 5018
K'th smallest element is 5066
K'th smallest element is 5222__15
K'th smallest element is 54
K'th smallest element is 565
K'th smallest element is 5101
K'th smallest element is 5018
K'th smallest element is 5103
K'th smallest element is 522
K'th smallest element is 55
K'th smallest element is 5018
void
18#include
04K'th smallest element is 574
K'th smallest element is 54
K'th smallest element is 565
K'th smallest element is 5112
K'th smallest element is 5018
K'th smallest element is 5103
Các
#include
06
K'th smallest element is 55
K'th smallest element is 5125
#include
5K'th smallest element is 5127
K'th smallest element is 567
K'th smallest element is 522
K'th smallest element is 5130
K'th smallest element is 577
K'th smallest element is 5018
void
18#include
04K'th smallest element is 574
K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 5018
K'th smallest element is 5139
K'th smallest element is 527
K'th smallest element is 580
#include
06
K'th smallest element is 5018
void
18#include
04K'th smallest element is 5146______177
#include
06
K'th smallest element is 5018
K'th smallest element is 5157
#include
04K'th smallest element is 567
K'th smallest element is 5222
K'th smallest element is 5018
K'th smallest element is 5032
K'th smallest element is 572
K'th smallest element is 577
K'th smallest element is 5222____15
K'th smallest element is 5168
K'th smallest element is 54
K'th smallest element is 565
void
222K'th smallest element is 5018
K'th smallest element is 5066
K'th smallest element is 5222____11755____177
K'th smallest element is 5018
K'th smallest element is 5178
K'th smallest element is 522
K'th smallest element is 5180
K'th smallest element is 577
K'th smallest element is 5018
K'th smallest element is 5183
K'th smallest element is 522
K'th smallest element is 5185
K'th smallest element is 577
K'th smallest element is 5187
K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 5190
K'th smallest element is 5018
K'th smallest element is 51929
K'th smallest element is 5193
int
31#include
5
K'th smallest element is 5018
K'th smallest element is 5197
K'th smallest element is 5018
K'th smallest element is 5199
#include
06
K'th smallest element is 5185
K'th smallest element is 577
K'th smallest element is 5203
K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 5206
K'th smallest element is 5018
K'th smallest element is 51929
K'th smallest element is 5193
int
31#include
5
K'th smallest element is 5018
K'th smallest element is 5213
K'th smallest element is 5018
K'th smallest element is 5215
#include
06
K'th smallest element is 5185
K'th smallest element is 577
K'th smallest element is 5219
K'th smallest element is 5222__175
K'th smallest element is 522222 ____177
K'th smallest element is 5224
#include
06
K'th smallest element is 5018
K'th smallest element is 5227
K'th smallest element is 5018
K'th smallest element is 5229
K'th smallest element is 577
#include
5int
31
K'th smallest element is 5018
K'th smallest element is 5234
K'th smallest element is 5018
K'th smallest element is 5236
#include
06
K'th smallest element is 5018
K'th smallest element is 5239
K'th smallest element is 565
K'th smallest element is 566
K'th smallest element is 54
K'th smallest element is 5243
K'th smallest element is 577
K'th smallest element is 5245
K'th smallest element is 54
#include
00 int
16#include
63 K'th smallest element is 5250
K'th smallest element is 5251
K'th smallest element is 572
K'th smallest element is 522
K'th smallest element is 5256
K'th smallest element is 54
K'th smallest element is 55
K'th smallest element is 5259
K'th smallest element is 575
K'th smallest element is 576
K'th smallest element is 577 ____177
K'th smallest element is 579
K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 582
K'th smallest element is 577
K'th smallest element is 584
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
K'th smallest element is 596
K'th smallest element is 577
K'th smallest element is 598
K'th smallest element is 599
K'th smallest element is 54______2017177
K'th smallest element is 555
K'th smallest element is 54
K'th smallest element is 505
#include
5K'th smallest element is 507
K'th smallest element is 5293
C#
cmpfunc[
7
K'th smallest element is 512
K'th smallest element is 514
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 511
int
57K'th smallest element is 522
int
const
62K'th smallest element is 522
int
int
66K'th smallest element is 522
int
int
82int
int
84K'th smallest element is 55
int
86K'th smallest element is 522
int
int
89int
int
84K'th smallest element is 55
K'th smallest element is 5322
K'th smallest element is 522
int
int
96int
int
84K'th smallest element is 55
K'th smallest element is 5329
K'th smallest element is 5222____114
int
K'th smallest element is 5333
K'th smallest element is 522
K'th smallest element is 53
#include
06
K'th smallest element is 55
K'th smallest element is 5338
K'th smallest element is 522
#include
20K'th smallest element is 522
K'th smallest element is 514
void
void
11int
void
13K'th smallest element is 522
K'th smallest element is 53
#include
06void
17
K'th smallest element is 5351
#include
06
K'th smallest element is 5353
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 514
int
70int
K'th smallest element is 5360
int
cmpfunc[
14K'th smallest element is 5222
#include
06cmpfunc[
17
#include
06cmpfunc[
19
#include
06int
cmpfunc[
22
#include
06#include
11 cmpfunc[
25
int
31void
52
int
31cmpfunc[
29
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222____114
int
void
61K'th smallest element is 522
K'th smallest element is 53
#include
06
K'th smallest element is 575
cmpfunc[
38int
31
K'th smallest element is 55
K'th smallest element is 5394
#include
06int
cmpfunc[
44
#include
06
K'th smallest element is 575
cmpfunc[
47int
31cmpfunc[
49
int
31
K'th smallest element is 5353
#include
06
K'th smallest element is 51
#include
06cmpfunc[
55
#include
06
K'th smallest element is 55
cmpfunc[
58K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 514
void
K'th smallest element is 522
K'th smallest element is 53
#include
06int
cmpfunc[
67
#include
06int
cmpfunc[
70
#include
06int
cmpfunc[
73
#include
06
K'th smallest element is 575
cmpfunc[
76int
31cmpfunc[
78
#include
06
K'th smallest element is 575
cmpfunc[
81int
31cmpfunc[
83
#include
06
K'th smallest element is 575
cmpfunc[
86int
31int
* a,
32
int
31* a,
34
int
31* a,
36
int
31* a,
38
#include
06
K'th smallest element is 51
K'th smallest element is 5222
K'th smallest element is 54
K'th smallest element is 551
K'th smallest element is 54
int
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
* a,
57K'th smallest element is 540
* a,
59K'th smallest element is 522
#include
00 #include
5int
const
24#include
06const
26
K'th smallest element is 5222____15
const
29K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 515
K'th smallest element is 514
void
K'th smallest element is 537
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
97K'th smallest element is 522
int
K'th smallest element is 5498
K'th smallest element is 5222____10022140
K'th smallest element is 5004
K'th smallest element is 522250250
K'th smallest element is 500
K'th smallest element is 552
K'th smallest element is 5009
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
JavaScript
K'th smallest element is 5511
K'th smallest element is 54
K'th smallest element is 5513
K'th smallest element is 5222____15
K'th smallest element is 5516
K'th smallest element is 54
K'th smallest element is 551
K'th smallest element is 54
K'th smallest element is 5520
K'th smallest element is 5222____15
K'th smallest element is 5523
K'th smallest element is 54
K'th smallest element is 551
K'th smallest element is 54
K'th smallest element is 5527
K'th smallest element is 5222____15
K'th smallest element is 5530
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 5534
K'th smallest element is 5222____15
void
17K'th smallest element is 5538
K'th smallest element is 54
#include
20K'th smallest element is 54
K'th smallest element is 5542
K'th smallest element is 522
void
17K'th smallest element is 5351
K'th smallest element is 522
K'th smallest element is 5353
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 5551
K'th smallest element is 522
void
17K'th smallest element is 5554
K'th smallest element is 522
void
17K'th smallest element is 5557
K'th smallest element is 522
K'th smallest element is 5559
void
17K'th smallest element is 5561
K'th smallest element is 522
#include
11 cmpfunc[
25#include
06void
17
K'th smallest element is 5567
#include
06cmpfunc[
29
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 5575
K'th smallest element is 5222
K'th smallest element is 575
#include
5void
17K'th smallest element is 5580
#include
06
K'th smallest element is 55
K'th smallest element is 5583
K'th smallest element is 522
K'th smallest element is 5585
void
17K'th smallest element is 5538
K'th smallest element is 5222
K'th smallest element is 575
#include
5void
17K'th smallest element is 5592
#include
06void
17
K'th smallest element is 5595
void
17void
18void
17__#include
06void
17
K'th smallest element is 5602
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
void
17K'th smallest element is 5607
K'th smallest element is 5222____15
cmpfunc[
58K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 5614
K'th smallest element is 522
K'th smallest element is 5616
void
17K'th smallest element is 5618
K'th smallest element is 522
K'th smallest element is 5620
void
17K'th smallest element is 5622
K'th smallest element is 522
K'th smallest element is 5624
Các
#include
06cmpfunc[
78
K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 5638
void
17K'th smallest element is 5629
void
17K'th smallest element is 5213__
#include
06cmpfunc[
83
K'th smallest element is 5222__175
cmpfunc[
86#include
06
K'th smallest element is 5651
void
17K'th smallest element is 5653
#include
06void
17
K'th smallest element is 5656
void
17K'th smallest element is 5658
#include
06void
17
K'th smallest element is 5661
#include
06void
17
K'th smallest element is 5664
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 551
K'th smallest element is 560
K'th smallest element is 5671
K'th smallest element is 54
K'th smallest element is 5673
K'th smallest element is 540
* a,
59K'th smallest element is 54
#include
00 K'th smallest element is 5678
K'th smallest element is 522
const
26K'th smallest element is 54
K'th smallest element is 55
const
29K'th smallest element is 51
#include
16
#include
18
#include
20
K'th smallest element is 500
#include
22Đầu ra
K'th smallest element is 5
Độ phức tạp về thời gian: O [n + k log n] .AUXILIARITY Không gian: O [N] O[N + K Log N].
Auxiliary Space: O[N]
Yếu tố nhỏ nhất k hèth trong một mảng chưa được phân loại sử dụng tối đa
Max-heap có thể được sử dụng để tìm phần tử nhỏ nhất thứ k, bằng cách chèn các phần tử K đầu tiên vào tối đa và sau đó so sánh các phần tử còn lại với gốc của MAX-HEAP và nếu phần tử nhỏ hơn gốc thì hãy loại bỏ gốc và chèn Yếu tố này vào đống và cuối cùng trả lại gốc của Max-Heap & NBSP;
Thực hiện theo các bước đã cho để giải quyết vấn đề:
- Xây dựng một mh tối đa của các phần tử K đầu tiên [ARR [0] thành ARR [K-1]] của mảng đã cho. & NBSP;
- Đối với mỗi phần tử, sau phần tử KTH [ARR [K] với ARR [N-1]], so sánh nó với gốc của MH. & NBSP;
- Nếu phần tử nhỏ hơn gốc thì hãy biến nó thành gốc và gọi Heapify cho Max-Heap MH
- b] khác bỏ qua nó. & nbsp;
- Cuối cùng, gốc của MH là yếu tố nhỏ nhất thứ k.
Dưới đây là việc thực hiện phương pháp trên:
C++
cmpfunc[
6
cmpfunc[
7 cmpfunc[
8 cmpfunc[
9
void
int
51int
5553____5555555555555555555
K'th smallest element is 511
K'th smallest element is 5701
K'th smallest element is 54
int
int
60K'th smallest element is 54
int
int
63K'th smallest element is 54
int
int
66K'th smallest element is 514
K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 5714
int
int
72int
int
74K'th smallest element is 54
void
K'th smallest element is 5721
K'th smallest element is 522
int
K'th smallest element is 5724
K'th smallest element is 54
int
int
82int
int
84K'th smallest element is 55
int
86K'th smallest element is 54
int
int
89int
int
84K'th smallest element is 55
int
93K'th smallest element is 54
int
int
96int
int
84K'th smallest element is 55
cmpfunc[
00K'th smallest element is 54
int
K'th smallest element is 5748
K'th smallest element is 54
int
K'th smallest element is 5751
K'th smallest element is 55
cmpfunc[
08K'th smallest element is 54
void
void
11int
void
13K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
K'th smallest element is 5762
K'th smallest element is 522
K'th smallest element is 5764
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 551
K'th smallest element is 5768
int
int
72int
cmpfunc[
14K'th smallest element is 53
K'th smallest element is 54
cmpfunc[
17K'th smallest element is 54
cmpfunc[
19K'th smallest element is 54
int
cmpfunc[
22K'th smallest element is 54
#include
11 cmpfunc[
25K'th smallest element is 522
K'th smallest element is 5785
K'th smallest element is 522
cmpfunc[
29K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
int
K'th smallest element is 5792
K'th smallest element is 53
K'th smallest element is 54
K'th smallest element is 575
cmpfunc[
38K'th smallest element is 5222____15
cmpfunc[
41K'th smallest element is 54
int
cmpfunc[
44K'th smallest element is 54
K'th smallest element is 575
cmpfunc[
47K'th smallest element is 522
cmpfunc[
49K'th smallest element is 522
K'th smallest element is 5764
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
cmpfunc[
55K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
58K'th smallest element is 51
void
K'th smallest element is 5819
int
cmpfunc[
63K'th smallest element is 53
K'th smallest element is 54
int
cmpfunc[
67K'th smallest element is 54
int
cmpfunc[
70K'th smallest element is 54
int
K'th smallest element is 5831
K'th smallest element is 54
K'th smallest element is 575
K'th smallest element is 5834
K'th smallest element is 522
K'th smallest element is 5836
K'th smallest element is 54
K'th smallest element is 575
K'th smallest element is 5839
K'th smallest element is 522
K'th smallest element is 5841
K'th smallest element is 54
K'th smallest element is 575
K'th smallest element is 5844
K'th smallest element is 522
K'th smallest element is 5846
K'th smallest element is 522
K'th smallest element is 5848
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
void
int
51int
5553int
cmpfunc[
99
K'th smallest element is 53
K'th smallest element is 54
int
const
03K'th smallest element is 54
const
05K'th smallest element is 54
const
07K'th smallest element is 51
int
K'th smallest element is 53
int
K'th smallest element is 55
int
K'th smallest element is 57
int
K'th smallest element is 59
K'th smallest element is 53
K'th smallest element is 54
K'th smallest element is 5877
K'th smallest element is 54
#include
00 #include
5int
K'th smallest element is 5882
K'th smallest element is 5222__175
K'th smallest element is 5885
#include
06
K'th smallest element is 5887
K'th smallest element is 54
K'th smallest element is 55
K'th smallest element is 5890
K'th smallest element is 51
int
#include
3
K'th smallest element is 53
K'th smallest element is 54
int
#include
7K'th smallest element is 54
int
int
0#include
4int
2#include
4K'th smallest element is 5904
K'th smallest element is 54
* a,
9K'th smallest element is 500
K'th smallest element is 501
K'th smallest element is 502
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
4K'th smallest element is 51
Java
K'th smallest element is 507
#include
62K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 511
K'th smallest element is 5701
K'th smallest element is 522
int
const
62K'th smallest element is 522
int
int
63K'th smallest element is 522
int
int
66K'th smallest element is 522
int
int
82int
int
84K'th smallest element is 55
K'th smallest element is 522
int
int
89__K'th smallest element is 522
int
int
96int
int
84K'th smallest element is 55
K'th smallest element is 522
int
K'th smallest element is 5751
K'th smallest element is 55
void
06#include
04void
08K'th smallest element is 522
void
void
11int
void
13K'th smallest element is 522
K'th smallest element is 53
#include
06void
17void
18#include
04void
20
#include
06
K'th smallest element is 5721
#include
04K'th smallest element is 572
K'th smallest element is 5222
K'th smallest element is 522
K'th smallest element is 5714
int
int
72int
cmpfunc[
14K'th smallest element is 522
K'th smallest element is 53
#include
06cmpfunc[
17
#include
06cmpfunc[
19
Các
#include
06#include
11 void
48#include
04#include
14
int
31
K'th smallest element is 5785
int
31cmpfunc[
29
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
int
K'th smallest element is 5022
K'th smallest element is 522
K'th smallest element is 53
#include
06
K'th smallest element is 575
void
66#include
04K'th smallest element is 567
int
31
K'th smallest element is 55
void
71#include
06int
void
74#include
04
K'th smallest element is 528
#include
06
K'th smallest element is 575
void
79K'th smallest element is 527
#include
14int
31void
06#include
04void
85
K'th smallest element is 527
K'th smallest element is 528
int
31
K'th smallest element is 5721
#include
04K'th smallest element is 572
#include
06
K'th smallest element is 51
#include
06cmpfunc[
55
#include
06
K'th smallest element is 55
cmpfunc[
58K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
void
K'th smallest element is 5721
int
cmpfunc[
63K'th smallest element is 522
K'th smallest element is 53
#include
06int
cmpfunc[
67
#include
06int
cmpfunc[
70
#include
06int
K'th smallest element is 5831
#include
06
K'th smallest element is 575
K'th smallest element is 5834
int
31
K'th smallest element is 5836
#include
06
K'th smallest element is 575
K'th smallest element is 5839
int
31
K'th smallest element is 5841
#include
06
K'th smallest element is 575
K'th smallest element is 5844
int
31int
* a,
32
int
31
K'th smallest element is 5095
int
31
K'th smallest element is 5097
int
31
K'th smallest element is 5848
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 551
K'th smallest element is 54
int
K'th smallest element is 53
int
K'th smallest element is 55
int
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 5222____2118
K'th smallest element is 540
K'th smallest element is 5120
K'th smallest element is 522
#include
00 #include
5int
K'th smallest element is 5882
#include
06
K'th smallest element is 575
K'th smallest element is 5885
int
31
K'th smallest element is 5887
K'th smallest element is 5222____15
K'th smallest element is 5890
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
* a,
85K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 522
int
* a,
98#include
91K'th smallest element is 556
K'th smallest element is 5222____10022140
K'th smallest element is 5004
K'th smallest element is 522
K'th smallest element is 558
K'th smallest element is 500
K'th smallest element is 560
K'th smallest element is 5009
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Python3
K'th smallest element is 511
K'th smallest element is 5174
K'th smallest element is 54
K'th smallest element is 565
K'th smallest element is 5017
K'th smallest element is 5018
K'th smallest element is 5019
K'th smallest element is 5222
K'th smallest element is 5018
K'th smallest element is 5022222177
K'th smallest element is 5024
K'th smallest element is 5222
K'th smallest element is 5018
K'th smallest element is 5027
K'th smallest element is 577
K'th smallest element is 5029
K'th smallest element is 5222
K'th smallest element is 5018
K'th smallest element is 5032
K'th smallest element is 577
K'th smallest element is 5034
K'th smallest element is 5222
int
16K'th smallest element is 577
K'th smallest element is 522
#include
11 K'th smallest element is 5050
K'th smallest element is 577
#include
04K'th smallest element is 580
#include
06
K'th smallest element is 5018
K'th smallest element is 5216
#include
06int
16
K'th smallest element is 572
K'th smallest element is 577
K'th smallest element is 527
K'th smallest element is 54
K'th smallest element is 565
int
82K'th smallest element is 5018
K'th smallest element is 5066
K'th smallest element is 5222
K'th smallest element is 55
K'th smallest element is 5069
K'th smallest element is 572
K'th smallest element is 54
K'th smallest element is 565
int
89K'th smallest element is 5018
K'th smallest element is 5066
K'th smallest element is 5222
K'th smallest element is 55
K'th smallest element is 555
K'th smallest element is 5083
int
16K'th smallest element is 5085
K'th smallest element is 54
K'th smallest element is 565
int
96K'th smallest element is 5018
K'th smallest element is 5066
K'th smallest element is 5222__15
K'th smallest element is 54
K'th smallest element is 565
K'th smallest element is 5261
K'th smallest element is 5018
K'th smallest element is 5103
K'th smallest element is 522
K'th smallest element is 55
K'th smallest element is 5018
void
18#include
04K'th smallest element is 574
K'th smallest element is 54
K'th smallest element is 565
void
11K'th smallest element is 5018
K'th smallest element is 5274
K'th smallest element is 5222
K'th smallest element is 5018
void
18#include
04K'th smallest element is 5146
K'th smallest element is 577
K'th smallest element is 5281
K'th smallest element is 522
K'th smallest element is 5018
K'th smallest element is 5284
#include
04K'th smallest element is 567
K'th smallest element is 54
K'th smallest element is 565
K'th smallest element is 5112
K'th smallest element is 5018
K'th smallest element is 5103
Các
#include
06
K'th smallest element is 55
K'th smallest element is 5125
#include
5K'th smallest element is 5127
K'th smallest element is 567
K'th smallest element is 522
K'th smallest element is 5130
K'th smallest element is 577
K'th smallest element is 5018
void
18#include
04K'th smallest element is 574
K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 5018
K'th smallest element is 5139
K'th smallest element is 527
K'th smallest element is 580
#include
06
K'th smallest element is 5018
void
18#include
04K'th smallest element is 5146______177
‘
K'th smallest element is 5222
K'th smallest element is 5018
K'th smallest element is 5032
K'th smallest element is 572
K'th smallest element is 577
K'th smallest element is 5222____15
K'th smallest element is 5168
K'th smallest element is 54
K'th smallest element is 565
K'th smallest element is 5721
K'th smallest element is 5018
K'th smallest element is 5066
K'th smallest element is 5222____11755____177
K'th smallest element is 5018
K'th smallest element is 5178
K'th smallest element is 522
K'th smallest element is 5180
K'th smallest element is 577
K'th smallest element is 5018
K'th smallest element is 5183
K'th smallest element is 522
K'th smallest element is 5362 ____177
K'th smallest element is 5187
K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 5190
K'th smallest element is 5018
K'th smallest element is 51929
K'th smallest element is 5193
int
31#include
5
K'th smallest element is 5018
K'th smallest element is 5374
K'th smallest element is 5018
K'th smallest element is 5199
#include
06
K'th smallest element is 5362 ____177
K'th smallest element is 5203
K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 5206
K'th smallest element is 5018
K'th smallest element is 51929
K'th smallest element is 5193
int
31#include
5
K'th smallest element is 5018
K'th smallest element is 5390
K'th smallest element is 5018
K'th smallest element is 5392
#include
06
K'th smallest element is 5362 ____177
K'th smallest element is 5219
K'th smallest element is 5222
K'th smallest element is 575
K'th smallest element is 5399
K'th smallest element is 577
K'th smallest element is 5224
#include
06
K'th smallest element is 5018
K'th smallest element is 5227
K'th smallest element is 5018
K'th smallest element is 5406
K'th smallest element is 577
#include
5int
31
K'th smallest element is 5018
K'th smallest element is 5411
K'th smallest element is 5018
K'th smallest element is 5236
#include
06
K'th smallest element is 5018
K'th smallest element is 5416
K'th smallest element is 565
K'th smallest element is 566
K'th smallest element is 54
K'th smallest element is 5243
K'th smallest element is 577
K'th smallest element is 5422
K'th smallest element is 54
#include
00 int
16#include
63 K'th smallest element is 5250
K'th smallest element is 5428
K'th smallest element is 5222__175
K'th smallest element is 5431
#include
06
K'th smallest element is 5433
K'th smallest element is 54
K'th smallest element is 55
K'th smallest element is 5436
K'th smallest element is 575
K'th smallest element is 576
K'th smallest element is 577 ____177
K'th smallest element is 579
K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 582
K'th smallest element is 577
K'th smallest element is 584
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
K'th smallest element is 596
K'th smallest element is 577
K'th smallest element is 598
K'th smallest element is 599
K'th smallest element is 54______2017177
#include
91K'th smallest element is 54
K'th smallest element is 505
#include
5K'th smallest element is 507
K'th smallest element is 5293
C#
cmpfunc[
7
K'th smallest element is 512
K'th smallest element is 514
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 5222____111
K'th smallest element is 5701
K'th smallest element is 522
K'th smallest element is 514
#include
06int
const
62
K'th smallest element is 522
K'th smallest element is 514
#include
06int
int
63
K'th smallest element is 522
K'th smallest element is 514
#include
06int
int
66
K'th smallest element is 522
K'th smallest element is 514
#include
06int
#include
06int
82int
cmpfunc[
63
K'th smallest element is 522
K'th smallest element is 53
#include
06
K'th smallest element is 55
K'th smallest element is 5516
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 514
#include
06int
#include
06int
89int
cmpfunc[
63
K'th smallest element is 522
K'th smallest element is 53
#include
06
K'th smallest element is 55
K'th smallest element is 5523
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 514
#include
06int
#include
06int
96int
cmpfunc[
63
K'th smallest element is 5222
#include
06
K'th smallest element is 55
K'th smallest element is 5538
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 514
#include
06int
#include
06
K'th smallest element is 5546
K'th smallest element is 522
K'th smallest element is 53
#include
06
K'th smallest element is 55
K'th smallest element is 5338
K'th smallest element is 522
#include
20K'th smallest element is 522
K'th smallest element is 514
#include
06void
#include
06void
11int
void
13
K'th smallest element is 522
K'th smallest element is 53
#include
06void
17
K'th smallest element is 5351
#include
06
K'th smallest element is 5764
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 514
‘
K'th smallest element is 522
K'th smallest element is 53
#include
06cmpfunc[
17
#include
06cmpfunc[
19
#include
06int
cmpfunc[
22
#include
06#include
11 cmpfunc[
25
int
31
K'th smallest element is 5785
int
31cmpfunc[
29
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 514
#include
06int
#include
06
K'th smallest element is 5022
K'th smallest element is 522
K'th smallest element is 53
#include
06
K'th smallest element is 575
cmpfunc[
38int
31
K'th smallest element is 55
int
K'th smallest element is 5613
#include
06int
cmpfunc[
44
#include
06
K'th smallest element is 575
cmpfunc[
47int
31cmpfunc[
49
int
31
K'th smallest element is 5764
#include
06
K'th smallest element is 51
#include
06cmpfunc[
55
#include
06
K'th smallest element is 55
cmpfunc[
58K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 514
#include
06void
#include
06
K'th smallest element is 5721
int
cmpfunc[
63K'th smallest element is 522
K'th smallest element is 53
#include
06int
cmpfunc[
67
#include
06int
cmpfunc[
70
#include
06int
K'th smallest element is 5831
#include
06
K'th smallest element is 575
K'th smallest element is 5834
int
31
K'th smallest element is 5836
#include
06
K'th smallest element is 575
K'th smallest element is 5839
int
31
K'th smallest element is 5841
#include
06
K'th smallest element is 575
K'th smallest element is 5844
int
31int
* a,
32
int
31
K'th smallest element is 5095
int
31
K'th smallest element is 5097
int
31
K'th smallest element is 5848
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 551
K'th smallest element is 54
int
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 5222____2118
K'th smallest element is 540
K'th smallest element is 5120
K'th smallest element is 522
#include
00 #include
5int
K'th smallest element is 5882
#include
06
K'th smallest element is 575
K'th smallest element is 5885
int
31
K'th smallest element is 5887
K'th smallest element is 5222____15
K'th smallest element is 5890
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 5714
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
97K'th smallest element is 522
int
K'th smallest element is 5722
K'th smallest element is 5222____10022140
K'th smallest element is 5004
K'th smallest element is 522
K'th smallest element is 550
K'th smallest element is 500
K'th smallest element is 552
K'th smallest element is 5009
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Độ phức tạp về thời gian: O [k + [n-k] * log k] & nbsp; không gian phụ trợ: O [k]O[K + [N-K] * Log K]
Auxiliary Space: O[K]
Phần tử nhỏ nhất K K
Đây là một tối ưu hóa qua Phương pháp 1, nếu QuickSort được sử dụng như một thuật toán sắp xếp trong bước đầu tiên. Trong Quicksort, chọn một phần tử trục, sau đó di chuyển phần tử trục đến vị trí chính xác của nó và phân vùng mảng xung quanh. Ý tưởng là, không phải hoàn thành Quicksort, mà dừng lại ở điểm mà chính Pivot là yếu tố nhỏ nhất của K Khănth. Ngoài ra, không tái diễn cho cả hai bên trái và phải của trục, nhưng tái diễn cho một trong số họ theo vị trí của Pivot. & NBSP;
Thực hiện theo các bước đã cho để giải quyết vấn đề:
- Chạy thuật toán sắp xếp nhanh trên mảng đầu vào
- Trong thuật toán này chọn một phần tử xoay và di chuyển nó đến vị trí chính xác
- Bây giờ, nếu chỉ số của trục bằng K thì hãy trả về giá trị, nếu không nếu chỉ số của trục lớn hơn k, thì recur cho subarray bên trái, khác sẽ tái diễn đối với subarray bên phải & nbsp;
- Lặp lại quá trình này cho đến khi phần tử tại Index K không được tìm thấy
Dưới đây là việc thực hiện phương pháp trên:
C
K'th smallest element is 5735
#include
int
K'th smallest element is 5738
int
K'th smallest element is 55
int
K'th smallest element is 5742
int
int
K'th smallest element is 53
int
K'th smallest element is 55
int
K'th smallest element is 5742
int
K'th smallest element is 53
K'th smallest element is 54
K'th smallest element is 575
K'th smallest element is 5758
K'th smallest element is 522
int
K'th smallest element is 5761
K'th smallest element is 5222__175
K'th smallest element is 5764
#include
06
K'th smallest element is 55
K'th smallest element is 5767
K'th smallest element is 5222__175
K'th smallest element is 5770
#include
06
K'th smallest element is 55
K'th smallest element is 5773
K'th smallest element is 5222____15
K'th smallest element is 5776
K'th smallest element is 5777
K'th smallest element is 5778
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
41K'th smallest element is 51
void
int
51int
* a,
int
K'th smallest element is 52
K'th smallest element is 53
K'th smallest element is 54
int
K'th smallest element is 5794
K'th smallest element is 54
K'th smallest element is 5796
K'th smallest element is 54
K'th smallest element is 5798
K'th smallest element is 51
int
K'th smallest element is 5738
int
K'th smallest element is 55
int
K'th smallest element is 5742
int
K'th smallest element is 53
K'th smallest element is 54
int
K'th smallest element is 5811
K'th smallest element is 54
#include
00 #include
5int
K'th smallest element is 5816
K'th smallest element is 5222__175
K'th smallest element is 5819
#include
06
K'th smallest element is 5821
#include
06
K'th smallest element is 5823
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 5829
K'th smallest element is 54
K'th smallest element is 55
K'th smallest element is 5832
K'th smallest element is 51
int
#include
3
K'th smallest element is 53
K'th smallest element is 54
int
K'th smallest element is 5839
K'th smallest element is 54
int
int
0#include
4int
2#include
4K'th smallest element is 5846
K'th smallest element is 54
int
6#include
5int
8int
9cmpfunc[
0
K'th smallest element is 5853
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
4K'th smallest element is 51
C++
cmpfunc[
6
cmpfunc[
7 cmpfunc[
8 cmpfunc[
9
int
K'th smallest element is 5738
int
K'th smallest element is 55
int
K'th smallest element is 5742
int
int
K'th smallest element is 53
int
K'th smallest element is 55
int
K'th smallest element is 5742
int
K'th smallest element is 53
K'th smallest element is 54
K'th smallest element is 575
K'th smallest element is 5758
K'th smallest element is 522
int
K'th smallest element is 5761
K'th smallest element is 5222__175
K'th smallest element is 5764
#include
06
K'th smallest element is 55
K'th smallest element is 5767
K'th smallest element is 5222__175
K'th smallest element is 5770
#include
06
K'th smallest element is 55
K'th smallest element is 5773
K'th smallest element is 5222____15
K'th smallest element is 5776
K'th smallest element is 5777
K'th smallest element is 5778
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
41K'th smallest element is 51
void
int
51int
* a,
int
K'th smallest element is 52
K'th smallest element is 53
K'th smallest element is 54
int
K'th smallest element is 5794
K'th smallest element is 54
K'th smallest element is 5796
K'th smallest element is 54
K'th smallest element is 5798
K'th smallest element is 51
int
K'th smallest element is 5738
int
K'th smallest element is 55
int
K'th smallest element is 5742
int
K'th smallest element is 53
K'th smallest element is 54
int
K'th smallest element is 5811
K'th smallest element is 54
#include
00 #include
5int
K'th smallest element is 5816
K'th smallest element is 5222__175
K'th smallest element is 5819
#include
06
K'th smallest element is 5821
#include
06
K'th smallest element is 5823
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 5829
K'th smallest element is 54
K'th smallest element is 55
K'th smallest element is 5832
K'th smallest element is 51
int
#include
3
K'th smallest element is 53
K'th smallest element is 54
int
K'th smallest element is 5839
K'th smallest element is 54
int
int
0#include
4int
2#include
4K'th smallest element is 5846
K'th smallest element is 54
* a,
9K'th smallest element is 500
K'th smallest element is 501
K'th smallest element is 5976
K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
4K'th smallest element is 51
Java
K'th smallest element is 507
K'th smallest element is 508
K'th smallest element is 507
K'th smallest element is 510
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
int
K'th smallest element is 5991
int
K'th smallest element is 5742
int
K'th smallest element is 5807
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
K'th smallest element is 5811
K'th smallest element is 522
#include
00 #include
5int
#include
0055____127#include
007#include
06
K'th smallest element is 575
K'th smallest element is 5819
int
31int
#include
013
int
31#include
015
int
31#include
017
int
31
K'th smallest element is 5823
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
int
#include
013K'th smallest element is 522
#include
028K'th smallest element is 522
#include
030K'th smallest element is 5222____15
K'th smallest element is 5832
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
int
K'th smallest element is 517
int
#include
042#include
043int
K'th smallest element is 5752
int
K'th smallest element is 59
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 5222
K'th smallest element is 575
#include
12#include
04 #include
054K'th smallest element is 527
#include
14#include
06int
K'th smallest element is 5761
#include
06
K'th smallest element is 575
#include
062K'th smallest element is 527
K'th smallest element is 567
int
31
K'th smallest element is 55
K'th smallest element is 5767
#include
06
K'th smallest element is 575
#include
070K'th smallest element is 527
K'th smallest element is 567
int
31
K'th smallest element is 55
#include
075K'th smallest element is 527
#include
077#include
06
K'th smallest element is 55
#include
080K'th smallest element is 527
#include
082#include
083#include
084
K'th smallest element is 527
K'th smallest element is 572
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222____15
void
71K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
#include
102#include
06
K'th smallest element is 582
K'th smallest element is 540
K'th smallest element is 541
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 522
int
K'th smallest element is 554
K'th smallest element is 544
K'th smallest element is 556
K'th smallest element is 522
K'th smallest element is 558
#include
06
K'th smallest element is 500
#include
06#include
131#include
04#include
133
K'th smallest element is 527
#include
135K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Python3
K'th smallest element is 507
#include
140K'th smallest element is 565
#include
142K'th smallest element is 54
K'th smallest element is 575
#include
12#include
04 K'th smallest element is 5193
#include
148__K'th smallest element is 522
#include
157K'th smallest element is 577
#include
159K'th smallest element is 5222
K'th smallest element is 575
#include
162__172#include
06
K'th smallest element is 55
#include
173K'th smallest element is 5222
K'th smallest element is 575
#include
162K'th smallest element is 572
#include
178__#include
06
K'th smallest element is 55
#include
184K'th smallest element is 572
K'th smallest element is 527
#include
187K'th smallest element is 5222____15
#include
190K'th smallest element is 5085
K'th smallest element is 527
#include
082K'th smallest element is 57777
K'th smallest element is 501__172
K'th smallest element is 54
K'th smallest element is 55
#include
205K'th smallest element is 565
#include
207K'th smallest element is 54
#include
209K'th smallest element is 577
#include
211K'th smallest element is 54
int
16K'th smallest element is 577
K'th smallest element is 5203
K'th smallest element is 54
#include
00 #include
218#include
63 K'th smallest element is 5250
#include
221K'th smallest element is 5222
K'th smallest element is 575
#include
224K'th smallest element is 577
#include
226#include
06#include
228
K'th smallest element is 577
#include
230#include
06int
16
K'th smallest element is 5085
K'th smallest element is 577
K'th smallest element is 527
K'th smallest element is 54
#include
237K'th smallest element is 577
#include
239K'th smallest element is 54
K'th smallest element is 55
K'th smallest element is 5187
K'th smallest element is 575
K'th smallest element is 576
K'th smallest element is 577
K'th smallest element is 577
#include
247K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 582
K'th smallest element is 577
K'th smallest element is 584
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
K'th smallest element is 596
K'th smallest element is 577
K'th smallest element is 598
K'th smallest element is 599
K'th smallest element is 54
K'th smallest element is 501
K'th smallest element is 577
K'th smallest element is 544
K'th smallest element is 54
K'th smallest element is 505
#include
5K'th smallest element is 507
int
9K'th smallest element is 509
#include
282#include
04#include
284K'th smallest element is 572
K'th smallest element is 527
#include
287C#
cmpfunc[
7
K'th smallest element is 512
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
int
K'th smallest element is 5991
int
K'th smallest element is 5742
int
K'th smallest element is 5807
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
K'th smallest element is 5811
K'th smallest element is 522
#include
00 #include
5int
#include
0055____127#include
007#include
06
K'th smallest element is 575
K'th smallest element is 5819
#include
06
K'th smallest element is 575
K'th smallest element is 5819
int
31#include
013
int
31#include
015
int
31#include
017
int
31
K'th smallest element is 5823
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
#include
013K'th smallest element is 522
#include
028K'th smallest element is 522
#include
030K'th smallest element is 5222____15
K'th smallest element is 5832
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
int
K'th smallest element is 517
int
#include
042#include
043int
K'th smallest element is 5752
int
K'th smallest element is 59
#include
043int
K'th smallest element is 59
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 5222__175
K'th smallest element is 5758
#include
06int
K'th smallest element is 5761
#include
06
K'th smallest element is 575
K'th smallest element is 5764
int
31
K'th smallest element is 55
K'th smallest element is 5767
#include
06
K'th smallest element is 575
#include
372int
31
K'th smallest element is 55
K'th smallest element is 5773
#include
06
K'th smallest element is 55
K'th smallest element is 5776
#include
083
K'th smallest element is 5778
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222____15
int
K'th smallest element is 5613
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 537
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
398K'th smallest element is 522
int
#include
401K'th smallest element is 522
K'th smallest element is 550
#include
06
K'th smallest element is 500
#include
06#include
407
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
JavaScript
K'th smallest element is 54
K'th smallest element is 560
#include
413K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
#include
417 K'th smallest element is 5811
K'th smallest element is 522
#include
00 #include
421#include
06
K'th smallest element is 575
K'th smallest element is 5819
int
31#include
417 #include
013
int
31#include
015
int
31#include
017
int
31
K'th smallest element is 5823
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222
#include
417 #include
013K'th smallest element is 522
#include
028K'th smallest element is 522
#include
030K'th smallest element is 5222____15
K'th smallest element is 5832
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 560
#include
452K'th smallest element is 5222__175
#include
455#include
06#include
417
K'th smallest element is 5761
#include
06
K'th smallest element is 575
#include
461int
31
K'th smallest element is 55
K'th smallest element is 5767
#include
06
K'th smallest element is 575
#include
372int
31
K'th smallest element is 55
K'th smallest element is 5773
#include
06
K'th smallest element is 55
K'th smallest element is 5776
#include
06#include
475
K'th smallest element is 5222____15
int
K'th smallest element is 5613
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 537
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 522
int
#include
401JavaScript
K'th smallest element is 54
K'th smallest element is 560
#include
413K'th smallest element is 522
#include
494K'th smallest element is 5
22#include
417 K'th smallest element is 5
811
K'th smallest element is 5
K'th smallest element is 5
22#include
00 #include
421O[N2] in worst case and O[N] on average
Auxiliary Space: O[1]
#include
06K'th smallest element is 5
75 K'th smallest element is 5
819
int
31#include
417#include
013
int
31#include
017A[] = {7, 0, 25, 6, 16, 17, 0}, K = 3
K'th smallest element is 5222
#include
417 #include
013K'th smallest element is 5
222____15K'th smallest element is 5
832K'th smallest element is 5
4K'th smallest element is 5
60#include
452K'th smallest element is 5
222__175#include
455
#include
06#include
417
K'th smallest element is 5761
C++
cmpfunc[
6
#include
06
K'th smallest element is 575
#include
461#include
06
K'th smallest element is 575
#include
467K'th smallest element is 53
int
31
K'th smallest element is 55
#include
470K'th smallest element is 5222
K'th smallest element is 522
#include
517K'th smallest element is 5222____15
#include
480K'th smallest element is 522
K'th smallest element is 53
K'th smallest element is 5222
#include
417 #include
485K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 5222
#include
417 #include
488
K'th smallest element is 51
K'th smallest element is 5222
#include
20K'th smallest element is 500
K'th smallest element is 5085
K'th smallest element is 53
Đầu ra
Độ phức tạp về thời gian: O [N2] trong trường hợp xấu nhất và O [n] trung bình & nbsp; không gian phụ trợ: O [1]
K'th smallest element is 54
#include
544int
#include
546K'th smallest element is 54
#include
548int
K'th smallest element is 543
int
#include
552Phần tử nhỏ nhất K K
K'th smallest element is 522
#include
559K'th smallest element is 54
K'th smallest element is 51
Cách tiếp cận này rất giống với thuật toán Sắp xếp nhanh và đếm nhưng dễ thực hiện hơn nhiều. Sử dụng bản đồ và sau đó ánh xạ từng phần tử với tần số của nó. Và như một bản đồ được đặt hàng sẽ lưu trữ dữ liệu theo cách được sắp xếp, vì vậy hãy tiếp tục thêm tần số của từng phần tử cho đến khi nó không trở nên lớn hơn hoặc bằng k để có thể đạt được phần tử K'th từ đầu, tức là K 'yếu tố nhỏ nhất.
Ví dụ: A [] = {7, 0, 25, 6, 16, 17, 0}, k = 3
K'th smallest element is 501
#include
572Thực hiện theo các bước đã cho để giải quyết vấn đề:
K'th smallest element is 51
Lưu trữ tần số của mọi phần tử trong bản đồ MP
Bây giờ đi qua các phần tử được sắp xếp trong bản đồ MP và thêm tần số của chúng vào một freq biến
Nếu tại bất kỳ điểm nào, giá trị của freq lớn hơn hoặc bằng k, thì hãy trả lại giá trị của trình lặp của bản đồ MP
Dưới đây là việc thực hiện phương pháp trên:
cmpfunc[
7 cmpfunc[
8 cmpfunc[
9
K'th smallest element is 54
K'th smallest element is 53
int
#include
500int
K'th smallest element is 543
int
#include
504int
K'th smallest element is 59
K'th smallest element is 54
int
#include
510#include
06#include
599int
#include
601
K'th smallest element is 54
#include
00 #include
5#include
514 #include
515K'th smallest element is 5222__175
#include
520#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
#include
06
K'th smallest element is 55
#include
525K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 55
#include
532K'th smallest element is 54
K'th smallest element is 53
int
#include
3
K'th smallest element is 54
int
#include
539K'th smallest element is 54
int
K'th smallest element is 548
K'th smallest element is 54
#include
00 #include
5int
#include
557K'th smallest element is 54
int
#include
564#include
06#include
663#include
04#include
665
K'th smallest element is 527
K'th smallest element is 572
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
* a,
9#include
567 #include
568#include
569 #include
570K'th smallest element is 522
#include
674
#include
06#include
567 #include
677#include
569 #include
679
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Python3
K'th smallest element is 565
#include
684K'th smallest element is 54
#include
686K'th smallest element is 577
#include
04K'th smallest element is 54
#include
00 #include
691#include
63 #include
693#include
694K'th smallest element is 522
#include
686K'th smallest element is 5085
K'th smallest element is 577
#include
699K'th smallest element is 5222____175
#include
7022K'th smallest element is 577
#include
704#include
06
K'th smallest element is 55
#include
707K'th smallest element is 54
K'th smallest element is 55 ________ 172 ________ 127 & nbsp;
K'th smallest element is 575
K'th smallest element is 576
K'th smallest element is 577
K'th smallest element is 577
#include
247K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 596
K'th smallest element is 577
K'th smallest element is 546
K'th smallest element is 54______2017177
K'th smallest element is 555
K'th smallest element is 54
K'th smallest element is 582
K'th smallest element is 577
K'th smallest element is 584
K'th smallest element is 542
K'th smallest element is 543__
K'th smallest element is 54
#include
741K'th smallest element is 577
#include
743K'th smallest element is 54
#include
00 int
16#include
63 K'th smallest element is 5250
#include
749K'th smallest element is 522
K'th smallest element is 575
#include
752#include
63 #include
754#include
06#include
756
K'th smallest element is 577
#include
756____1085 ________ 127 & NBSP;K'th smallest element is 522
#include
762K'th smallest element is 580
#include
06#include
756
K'th smallest element is 577
K'th smallest element is 527
K'th smallest element is 54
#include
769K'th smallest element is 577
#include
771Các
C#
cmpfunc[
7
K'th smallest element is 512
cmpfunc[
7 #include
782
cmpfunc[
7 #include
85
K'th smallest element is 514
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 515
int
#include
791int
K'th smallest element is 543
int
____3795#include
585int
K'th smallest element is 59
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
510K'th smallest element is 5222
int
13#include
5#include
417 #include
691#include
63 #include
810K'th smallest element is 522
K'th smallest element is 53
#include
06#include
599int
#include
816
#include
06
K'th smallest element is 575
#include
604int
31
K'th smallest element is 55
#include
5int
#include
824#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222____15
#include
532K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 5714
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
539K'th smallest element is 522
int
K'th smallest element is 548
K'th smallest element is 522
int
#include
97K'th smallest element is 522
#include
851int
K'th smallest element is 543
int
#include
855#include
06
K'th smallest element is 582
K'th smallest element is 540
#include
851int
K'th smallest element is 543
int
int
11K'th smallest element is 522
#include
00 #include
5int
#include
557#include
06#include
870
#include
083#include
872
#include
083#include
874
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
int
#include
564K'th smallest element is 522
#include
881#include
06#include
567 #include
677#include
569 #include
679
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Độ phức tạp về thời gian: O [n log n] Không gian phụ trợ: O [n]O[N log N]
Auxiliary Space: O[N]
Phần tử nhỏ nhất K K
Để tìm phần tử tối thiểu thứ k trong một mảng, hãy chèn các phần tử vào hàng đợi ưu tiên cho đến khi kích thước của nó nhỏ hơn k, & nbsp; và sau đó so sánh các phần tử còn lại với gốc của hàng đợi ưu tiên và nếu phần tử nhỏ hơn Sau đó loại bỏ gốc và chèn phần tử này vào hàng đợi ưu tiên và cuối cùng trả lại gốc của hàng đợi ưu tiên
Thực hiện theo các bước đã cho để giải quyết vấn đề:
- Xây dựng một hàng đợi ưu tiên của các phần tử k đầu tiên [ARR [0] thành ARR [K-1]] của mảng đã cho. & Nbsp;
- Đối với mỗi phần tử, sau phần tử KTH [ARR [K] với ARR [N-1]], so sánh nó với gốc của hàng đợi ưu tiên. & NBSP;
- Nếu phần tử nhỏ hơn gốc thì hãy xóa gốc và chèn phần tử này vào hàng đợi ưu tiên
- b] khác bỏ qua nó. & nbsp;
- Cuối cùng, gốc của hàng đợi ưu tiên là phần tử nhỏ nhất thứ k.
Dưới đây là việc thực hiện phương pháp trên:
C++
cmpfunc[
6
cmpfunc[
7 cmpfunc[
8 cmpfunc[
9
int
K'th smallest element is 53
int
K'th smallest element is 55
int
K'th smallest element is 57
int
K'th smallest element is 59
K'th smallest element is 53
K'th smallest element is 54
#include
904int
#include
906K'th smallest element is 54
#include
00 #include
5int
#include
911K'th smallest element is 522
#include
913K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
#include
00 #include
5int
#include
920K'th smallest element is 5222__175
#include
923#include
06#include
925
#include
06#include
913
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 55
#include
934K'th smallest element is 51
int
#include
3
K'th smallest element is 53
K'th smallest element is 54
int
#include
941K'th smallest element is 54
int
#include
944K'th smallest element is 54
int
#include
42K'th smallest element is 54
* a,
9#include
950K'th smallest element is 501
K'th smallest element is 502
K'th smallest element is 51
Java
K'th smallest element is 507
#include
62K'th smallest element is 511
#include
957#include
958 #include
959K'th smallest element is 54
#include
961K'th smallest element is 54
K'th smallest element is 514
int
#include
965K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
970K'th smallest element is 522
K'th smallest element is 575
#include
973#include
04#include
14#include
06
K'th smallest element is 55
K'th smallest element is 572
K'th smallest element is 527
K'th smallest element is 556
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
#include
762 K'th smallest element is 575
#include
986#include
04#include
14#include
06
K'th smallest element is 55
K'th smallest element is 527
K'th smallest element is 556
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
#include
762 K'th smallest element is 53
#include
06
K'th smallest element is 55
#include
04K'th smallest element is 556
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 515
int
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
#include
022#include
06
K'th smallest element is 582
K'th smallest element is 540
#include
026int
31
K'th smallest element is 540
#include
029K'th smallest element is 522
#include
00 #include
5int
#include
03#include
04#include
036#include
06#include
038
#include
06
K'th smallest element is 575
#include
041int
31#include
043
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222____15
#include
050K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
062Các
K'th smallest element is 522
int
#include
089K'th smallest element is 522
int
K'th smallest element is 554
#include
91K'th smallest element is 556
K'th smallest element is 522
#include
674#include
097K'th smallest element is 5777
#include
099K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Python3
K'th smallest element is 507
#include
104K'th smallest element is 565
K'th smallest element is 566
K'th smallest element is 54
#include
108K'th smallest element is 577
#include
110K'th smallest element is 54
#include
00 int
16#include
63 K'th smallest element is 5250
#include
116K'th smallest element is 522
#include
118K'th smallest element is 522
#include
120K'th smallest element is 54
#include
00 int
16#include
63 K'th smallest element is 5250
K'th smallest element is 5428
K'th smallest element is 5222__175
#include
129#include
04#include
131#include
06#include
133
#include
06#include
118
#include
06#include
120
K'th smallest element is 54
K'th smallest element is 55
#include
140#include
04K'th smallest element is 574
K'th smallest element is 575
K'th smallest element is 576
K'th smallest element is 577
K'th smallest element is 577
#include
247K'th smallest element is 580
K'th smallest element is 54
K'th smallest element is 596
K'th smallest element is 577
#include
065K'th smallest element is 54
K'th smallest element is 582
K'th smallest element is 577
K'th smallest element is 584
#include
065K'th smallest element is 543__
K'th smallest element is 54______2017177
#include
91K'th smallest element is 54
K'th smallest element is 505
#include
5#include
184K'th smallest element is 5293
C#
cmpfunc[
7
K'th smallest element is 512
cmpfunc[
7 #include
85
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 515
int
K'th smallest element is 54
K'th smallest element is 53
Các
K'th smallest element is 522
#include
00 #include
5int
#include
911#include
06#include
218
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
#include
00 #include
5int
#include
920#include
06
K'th smallest element is 575
#include
228int
31#include
230
int
31#include
232
int
31#include
234
int
31#include
218
#include
06
K'th smallest element is 51
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222____15
#include
243K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 537
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
062#include
06#include
257
K'th smallest element is 522
int
#include
260K'th smallest element is 522
int
#include
42K'th smallest element is 522
#include
881#include
097#include
267#include
099
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Độ phức tạp về thời gian: O [k log k + & nbsp; [n - k] log k] Không gian phụ trợ: O [k] O[K log K + [N – K] log K]
Auxiliary Space: O[K]
Phần tử nhỏ nhất K K
Ý tưởng để giải quyết vấn đề này là phần tử nhỏ nhất KTH sẽ là phần tử ở vị trí KTH nếu mảng được sắp xếp theo thứ tự tăng lên. Sử dụng logic này, tìm kiếm nhị phân có thể được sử dụng để dự đoán chỉ số của một phần tử như thể mảng được sắp xếp nhưng không thực sự sắp xếp mảng. & NBSP; & nbsp;
Thực hiện theo các bước đã cho để giải quyết vấn đề:
- Tìm thấp và cao đó là phạm vi mà câu trả lời của chúng tôi có thể nói dối. & NBSP;
- Áp dụng tìm kiếm nhị phân trên phạm vi này. & NBSP;
- Nếu phần tử được chọn sẽ có MID có ít hơn các phần tử K thấp hơn thì sẽ tăng số lượng islow = mid + 1.low = mid + 1.
- Nếu không, giảm con trỏ cao, tức là cao = mid
- Tìm kiếm nhị phân sẽ kết thúc khi chỉ còn lại một phần tử trong không gian trả lời sẽ là câu trả lời.
Dưới đây là việc thực hiện phương pháp trên:
C++
cmpfunc[
6
int
46
cmpfunc[
7 cmpfunc[
8 cmpfunc[
9
int
#include
278int
#include
280int
#include
282
K'th smallest element is 53
K'th smallest element is 54
int
#include
286K'th smallest element is 54
#include
00 #include
5int
#include
291K'th smallest element is 5222__175
#include
294#include
06#include
296
K'th smallest element is 54
K'th smallest element is 55
#include
299K'th smallest element is 51
int
#include
302int
#include
30430____5#include
306
K'th smallest element is 53
K'th smallest element is 54
int
#include
310K'th smallest element is 54
int
#include
313K'th smallest element is 54
#include
00 #include
5int
#include
318K'th smallest element is 522
#include
320K'th smallest element is 522
#include
322K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
#include
11 #include
327K'th smallest element is 522
int
#include
330K'th smallest element is 5222__175
#include
333#include
06#include
335
K'th smallest element is 522
#include
762#include
06#include
339
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 55
#include
344K'th smallest element is 51
int
#include
3
K'th smallest element is 53
K'th smallest element is 54
#include
544int
#include
352K'th smallest element is 54
int
#include
488K'th smallest element is 54
* a,
9K'th smallest element is 500
K'th smallest element is 501
#include
360K'th smallest element is 54
K'th smallest element is 55
cmpfunc[
4K'th smallest element is 51
Java
K'th smallest element is 507
K'th smallest element is 508
K'th smallest element is 507
K'th smallest element is 510
K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 515
int
#include
374__K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
383#include
04K'th smallest element is 556
K'th smallest element is 522
#include
00 #include
5int
#include
03#include
04#include
392#include
06
K'th smallest element is 575
#include
294int
31#include
296
K'th smallest element is 5222____15
#include
299K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 515
int
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
415K'th smallest element is 522
int
#include
418K'th smallest element is 522
#include
00 #include
5int
#include
03#include
04#include
425#include
06#include
427
#include
06#include
429
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 522
#include
11 #include
327#include
06int
#include
437
K'th smallest element is 555
K'th smallest element is 556
#include
06
K'th smallest element is 575
#include
333int
31#include
444
K'th smallest element is 527
K'th smallest element is 556
#include
06#include
762
int
31#include
339
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222____15
#include
344K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 54
K'th smallest element is 53
Các
K'th smallest element is 522
int
#include
482____K'th smallest element is 544
K'th smallest element is 556
K'th smallest element is 5222v158
#include
487K'th smallest element is 560
#include
489K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
Python3
K'th smallest element is 507
#include
140K'th smallest element is 565
#include
496K'th smallest element is 54
#include
498K'th smallest element is 577
#include
04K'th smallest element is 54
#include
00 int
16#include
63 K'th smallest element is 5250
#include
5K'th smallest element is 598
#include
508K'th smallest element is 5222
K'th smallest element is 575
#include
511K'th smallest element is 577
#include
513#include
06#include
498
K'th smallest element is 5085
K'th smallest element is 577
K'th smallest element is 527
K'th smallest element is 54
K'th smallest element is 55
#include
521K'th smallest element is 565
#include
523K'th smallest element is 54
#include
525K'th smallest element is 577
#include
205K'th smallest element is 54
#include
529K'th smallest element is 577
K'th smallest element is 572
#include
532K'th smallest element is 572
K'th smallest element is 527
K'th smallest element is 54
#include
00 int
16#include
63 K'th smallest element is 5250
#include
5K'th smallest element is 598
#include
508K'th smallest element is 5222
K'th smallest element is 575
#include
511K'th smallest element is 577
#include
513#include
06#include
498
K'th smallest element is 5085
K'th smallest element is 577
K'th smallest element is 527
K'th smallest element is 54
K'th smallest element is 55
#include
521K'th smallest element is 565
#include
523K'th smallest element is 54
#include
525K'th smallest element is 577
#include
205K'th smallest element is 54
#include
529K'th smallest element is 577
K'th smallest element is 572
#include
532K'th smallest element is 572
K'th smallest element is 527
K'th smallest element is 522
#include
762K'th smallest element is 580
K'th smallest element is 522
#include
525K'th smallest element is 577
#include
546#include
547K'th smallest element is 522
#include
529K'th smallest element is 577
#include
551#include
552K'th smallest element is 54
#include
11 #include
555K'th smallest element is 5222___
K'th smallest element is 5222__175
#include
569K'th smallest element is 54
K'th smallest element is 505
#include
5K'th smallest element is 507
#include
616C#
#include
06#include
525
K'th smallest element is 577
#include
557__1085 K'th smallest element is 527
#include
06#include
529
K'th smallest element is 577
#include
582K'th smallest element is 511
K'th smallest element is 512
K'th smallest element is 54
K'th smallest element is 515
int
#include
374__K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
383#include
04K'th smallest element is 556
K'th smallest element is 522
#include
00 #include
5int
#include
03#include
04#include
392#include
06
K'th smallest element is 575
#include
294int
31#include
296
K'th smallest element is 5222____15
#include
299K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 515
int
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
415K'th smallest element is 522
int
#include
418K'th smallest element is 522
#include
00 #include
5int
#include
03#include
04#include
425#include
06#include
673
#include
06#include
675
K'th smallest element is 522
#include
11 #include
327K'th smallest element is 522
#include
11 #include
327#include
06int
#include
437
K'th smallest element is 555
K'th smallest element is 556
#include
06
K'th smallest element is 575
#include
333int
31#include
335
#include
06#include
762
int
31#include
339
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222____15
#include
344K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
K'th smallest element is 514
K'th smallest element is 515
void
K'th smallest element is 535
K'th smallest element is 54
K'th smallest element is 53
K'th smallest element is 522
int
#include
709Các
K'th smallest element is 522
#include
881#include
097#include
267#include
717
K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 51
K'th smallest element is 5
22int
#include
482____K'th smallest element is 5
44K'th smallest element is 5
56
K'th smallest element is 5222v158
#include
487K'th smallest element is 54
K'th smallest element is 53
#include
06#include
417 #include
286
#include
06#include
00#include
5#include
417 #include
733
#include
734
K'th smallest element is 575
#include
294#include
737#include
296
#include
06
K'th smallest element is 55
#include
299K'th smallest element is 54
K'th smallest element is 51
________ 14 ________ 260 & nbsp; #include
746
K'th smallest element is 5222
#include
417 #include
749K'th smallest element is 5222
#include
417 #include
752K'th smallest element is 5222
#include
00#include
5#include
417 #include
733K'th smallest element is 522
K'th smallest element is 53
#include
06#include
427
#include
06#include
429
K'th smallest element is 5222
K'th smallest element is 522
#include
11#include
768K'th smallest element is 522
K'th smallest element is 53
#include
06#include
417 #include
773
#include
06
K'th smallest element is 575
#include
333#include
734#include
335
#include
06#include
762
int
31#include
339
K'th smallest element is 522
K'th smallest element is 51
K'th smallest element is 5222____15
#include
344K'th smallest element is 54
K'th smallest element is 51
K'th smallest element is 54
#include
417 #include
488K'th smallest element is 54
#include
417 #include
795K'th smallest element is 54
#include
20K'th smallest element is 500
#include
799Độ phức tạp về thời gian: O [N * log [MX-MN]], trong đó Mn là tối thiểu và MX là tối đa. O[n * log [mx-mn]], where mn be minimum and mx be maximum.
Auxiliary
Space: O[1]
Next:
- Kiễu yếu tố nhỏ nhất/lớn nhất trong mảng chưa được phân loại | Đặt 2 [thời gian tuyến tính dự kiến] & nbsp;
- Kiễu yếu tố nhỏ nhất/lớn nhất trong mảng chưa được phân loại | Đặt 3 [thời gian tuyến tính trong trường hợp xấu nhất]