Mam pytanie dotyczące złożoności czasowej (duża notacja O) dla oprogramowania Java. Czy istnieje sposób, aby szybko obliczyć lub przetestować go (lub jakakolwiek strona internetowa, która mogłaby go obliczyć, byłaby mile widziany). Na przykład chciałbym sprawdzić to na poniższym fragmencie kodu i ewentualnie poprawić także:Narzędzie do obliczania skomplikowanej złożoności kodu Java w czasie O?
int dcount = 24423567;
int a = 0;
if (dcount == 0){
a = 1;
}
String ds = Integer.toString(dcount);
String[] sa = ds.split("(?<=.)");
HashSet hs = new HashSet();
Collections.addAll(hs, sa);
a = hs.size();
if (dcount < 0)
a--;
System.out.println(a);
"Złożoność czasowa" zwykle oznacza złożoność czasu najgorszego. Ten problem okazał się niemożliwy. – emory
Miałem na myśli złożoność (big-O). Edytuje również post. – aretai
Jeśli chcesz policzyć różne cyfry w liczbie, ten kod zdecydowanie nie jest optymalnym rozwiązaniem zarówno w czasie, jak iw przestrzeni. –