回答

收藏

在数组中查找引线leaders

技术问答 技术问答 217 人阅读 | 0 人回复 | 2023-09-12

我们需要打印数组中存在的一切leaders。若元素大于元素右侧,则元素为领导者。3 M) W! T5 e5 }" t& l
例如:; o0 r. Z1 i: P! O( d" S
arr[]={14、12、70、15、99、65、21、90}Here 99 and 90 are leader elements               
, P: U" f; i3 i  C& i/ K    解决方案:                                                               
+ \& K6 R1 e9 P0 m                                                                使用两个循环。外循环迭代数组元素,内循环检查数组的正确元素。如果当前元素大于右侧元素,则为leaders。7 V0 z2 O* \/ s1 _5 d+ T
java代码:; |7 ^/ T% L9 R9 j7 u. z
public static void findLeadersInAnArrayBruteForce(int arr() System.out.println("Finding leaders in an array using brute force : "); for (int i = 0; i 时间复杂:o(N^2)
! t$ K& N) h( E1 u+ D解决方案2:
7 y: L; C  ?8 e' V让我们找到更优化的解决方案
- [1 H1 ~3 ~- F我们将永远使用最右边的元素leaders的属性。
% o/ ~* f5 W5 o我们将从最右边的元素开始,并跟踪最大值。, o* r% d( d. w0 i! C6 X
当我们得到新的最大值时,这个元素就是leaders。
; ?# P1 D4 w+ [1 w: Sjava代码:/ B; A+ X8 l, w8 A, Y& q
public static void findLeadersInAnArray(int arr {  System.out.println(&quot;Finding leaders in an array : &quot;);  int rightMax=arr[arr.length-一、 / Rightmost will always be a leader  System.out.print(rightMax &quot; &quot;);  for (int i = arr.length-2; i>=0; i--) {   if(arr<i> > rightMax)  {     rightMax=arr<i>;    System.out.print(&quot; &quot; rightMax);   时间复杂:o(N)  R; ?3 ~: |* P$ c& }& n
在数组中搜索leaders的 Java 程序:
5 n4 q3 D7 W4 ]) t% Lpackage org.arpit.java2blog;public class FindLeadersInArrayMain { public static void main(String[] args) {  int arr[]={14findLeadersInAnArrayBruteForce(arr);  System.out.println(&quot;n==================&quot;);  findLeadersInAnArray(arr); } public static void findLeadersInAnArrayBruteForce(int arr {  System.out.println(&quot;Finding leaders in an array using brute force : &quot;);  for (int i = 0; i =0; i--) {   if(arr<i> > rightMax)  {     rightMax=arr<i>;    System.out.print(&quot; &quot; rightMax);   当您操作上述程序时,您将获得以下输出:+ ?% z. C- j9 [1 P
Finding leaders in an array using brute force99 90 ==================Finding leaders in an array :90 99
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则