In java....
public class Test
{
public static void main(String args[])
{
int values[] = {5,1,0,2,3,3,2,0,1};
int result = 0; //Length of SubArray
int indexOfSubArray = -1; //Finally Contains the index in the array, where the subArray starts
if(values == null || values.length == 0)
result = 0;
else if(values.length == 1)
{
result = 1;
indexOfSubArray = 0;
}
else
{
for(int i = 0; i < values.length-1; i++)
{
for( int j = i+1; j < values.length; j++)
{
if( values[i] == values[j])
{
int subArrSize = getSubArrSize(values, i, j);
if(result < subArrSize)
{
result = subArrSize;
indexOfSubArray = i;
}
}
}
}
}
System.out.println("Length of Sub Array: " + result);
System.out.println("Index Of Sub Array: " + indexOfSubArray);
}
public static int getSubArrSize(int values[], int i, int j)
{
int size = 0;
while (i <= j)
{
if(values[i] == values[j])
size++;
else
return size;
i++;
j--;
}
return size;
}
}
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54:





by: UrosVidojevicPosted on 2007-12-10 at 18:22:36ID: 20446884
Is O(n^3) ok?