gpt4 book ai didi

java - 返回一个回文数组 - 将 arraylist 转换为数组

转载 作者:行者123 更新时间:2023-12-01 10:08:01 25 4
gpt4 key购买 nike

我有以下代码用于在数组中返回回文 - 代码工作正常,但我实际上是将 arraylist 转换为数组 - 因为大小未知 - 这是一个昂贵的转换吗?时间复杂度是多少? java 编码新手 - 我自己编写了代码,但我一直在计算数组转换的时间复杂度..

public class palindrome{

public static void main(String[] args){

String[] arr = {"saw","madam","level","taco","tomot"};
String[] res = palind(arr);
System.out.println(java.util.Arrays.toString(res));
}

public static String[] palind(String[] arr){
int count = 0;
java.util.ArrayList<String> list = new java.util.ArrayList<String>();
for(String s : arr){
if(isPalindrome(s) == true){
count++;
list.add(s);
}
}
String[] a = list.toArray(new String[count]);
return a;
}

public static boolean isPalindrome(String s){
return s.equals(new StringBuilder(s).reverse().toString());
}
}

最佳答案

应该是 O(n),其中 n 是数组的大小。我看到遍历数组需要 n 时间,遍历的每一步时间都是恒定的。

关于java - 返回一个回文数组 - 将 arraylist 转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36321276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com