-2
기본 방법 : 정수 배열을 가져 와서 SparseCompression()을 사용하여 문자열로 압축합니다.기본 압축 알고리즘 만들기
public class Compress
{
public static void main(String[] args)
{
int[] test = {0, 0, 0, 0, 0, 0, 0, 999};
String result = SparseCompression(test);
// expected result: "#7,999,"
System.out.println(result);
//need to compress something like(2,0,0,0,54,0,0,2)
// expected result: "2,#3,54,#2,2"
}
압축 알고리즘 : 지금까지 배열 한 후 연속 제로로 시작해야합니다 먼저 비 제로에서 끝납니다. 0이 아닌 값으로 시작하여 배열 끝까지 계속할 수 있어야합니다. 뭔가 (4,00004565000,5).
public static String SparseCompression(int[] array)
{
int count = 0;
int nonZero = 0;
int after = 0;
for(int i = 0; i< array.length; i++)
{
if(array[i] == 0)
{
count++;
}
else if(array[i] != 0)
{
nonZero = array[i];
}
}
Integer.toString(count);
String result = "#" + count + ", " + nonZero;
return result;
}
}
질문은 무엇인가? 이것이 숙제 문제 인 것처럼 보이고 당신은 당신이해야 할 일을 이해하지 못합니다. 숙제에 관한 질문을 올리려면 사이트 정책을 읽어보십시오. –