prizkaboom
BAN USERpublic static int TheNumberXBalance(ArrayList TheListToCheck )
{
if (TheListToCheck==null && TheListToCheck.isEmpty())
return -1;
for(int k=0;k<TheListToCheck.size();k++)
{
if(partBalance(TheListToCheck,k,0,TheListToCheck.size()-1))
System.out.println("Value:"+TheListToCheck.get(k)+" at index["+k+"]");
}
return 1;
}
public static boolean partBalance(ArrayList TheListToCheck,int index_pivot,int start,int end)
{
int pivot=(int)TheListToCheck.get(index_pivot);
int indexinitLeft= start;
int indexendLeft=index_pivot-1;
int indexinitRight= pivot+1;
int indexendRight=end;
int leftval=(int)TheListToCheck.get(indexinitLeft);
int rightval=(int)TheListToCheck.get(indexendRight);
while(index_pivot>indexinitLeft)
{
leftval=(int)TheListToCheck.get(indexinitLeft);
//System.out.println("Compare:"+pivot+" with:"+leftval);
if(pivot<=leftval)
{
return false;
}
else {
indexinitLeft++;
}
}
while(index_pivot<indexendRight)
{
rightval=(int)TheListToCheck.get(indexendRight);
//System.out.println("Compare:"+pivot+" with r"+rightval);
if(pivot>=rightval)
{
return false;
}else
{
indexendRight--;
}
}
return true;
}
}
/* @author prizkaboom
*/
public class ShortestSubstring {
HashMap HashAlphabet;
public ShortestSubstring()
{
}
void resetAlphabet()
{
HashAlphabet = new HashMap();
}
public void getShortestSubstring(String stringToCheck, String Alphabet )
{
this.resetAlphabet();
int initIndex=-1;
int lastIndex=-1;
for (int i = 0; i < stringToCheck.length(); i++)
{
char c = stringToCheck.charAt(i);
if(HashAlphabet.containsKey(c))
{
resetAlphabet();
initIndex=i+1;
}
else
{
HashAlphabet.put(c,i);
}
System.out.println("Adding:"+c);
if(HashAlphabet.size()==Alphabet.length())
{
if(ContainsAlphabet(Alphabet))
{
lastIndex=i+1;
String subs=stringToCheck.substring(initIndex,lastIndex);
System.out.println("is:"+ subs);
printHashAlphabet();
return;
}
else
{
resetAlphabet();
initIndex=i+1;
}
}
if(HashAlphabet.size()>Alphabet.length())
{
resetAlphabet();
initIndex=i+1;
}
}
// printHashAlphabet();
System.out.println("The alphabet:"+Alphabet+" is not contained on this string");
// If the ford end but we arribe here if meas that the shortest alphabet is no present
}
boolean ContainsAlphabet(String Alphabet)
{
// Add of elements of the Alphabet
for (int i = 0; i < Alphabet.length(); i++)
{
char c = Alphabet.charAt(i);
if(!HashAlphabet.containsKey(c))
{
return false;
}
}
return true;
}
void printHashAlphabet()
{
System.out.println("Map : " + HashAlphabet+ "This can track the position!!");
}
//Autor : prizkaboom
static public void GetNewSortArray(int A[],int B[])
{
ArrayList C = new ArrayList();
int i=0,j=0;
while(i<A.length && j<B.length)
{
if(A[i]< B[j])
{
C.add(A[i]);
i++;
}
if(A[i]>B[j]){
C.add(B[j]);
j++;
}
if(A[i]==B[j])
{
C.add(B[j]);
C.add(A[i]);
j++;
i++;
}
}
while(j<B.length)
{
C.add(B[j]);
j++;
}
while(i<A.length)
{
C.add(A[i]);
i++;
}
System.out.println(C);
}
void printPattern()
{
for(int i=1;i<m_n;i++ )
{
for(int j=0;j<m_n;j++)
{
if(i%2!=0){
if(j==m_n-1)
{
System.out.print((i+1)+" ");
System.out.println();
}else
{
System.out.print(i+" ");
}
}
else
{
if(j==0)
{
System.out.print((i+1)+" ");
}else
{
System.out.print(i+" ");
if(j==m_n-1)
{
System.out.println();
}
}
}
}
}
}
- prizkaboom January 27, 2017