tczhaodachuan
BAN USERdef missingNumberByFormula(nums):
total = sum(nums)
n = nums.__len__()
return int(0.5 * (nums[0] + nums[n - 1]) * (n + 1) - total)
public class ReverseWords
{
/**
* @param args
*/
public static void main(String[] args)
{
// TODO Auto-generated method stub
ReverseWords reverseWords = new ReverseWords();
System.out.println(reverseWords.swapWords("zhadac"));
System.out.println(reverseWords.reverseWords("the boy ran"));
}
public String reverseWords(String s)
{
StringBuilder sb = new StringBuilder();
String[] strs = s.split("\\s");
for(String str : strs)
{
sb.append(swapWords(str)).append(" ");
}
return sb.toString();
}
public String swapWords(final String s)
{
if(s.length() == 0 || s.length() == 1)
{
return s;
}
StringBuilder sb = new StringBuilder();
sb.append(s.charAt(s.length() - 1));
char start = s.charAt(0);
String rest = swapWords(s.substring(1, s.length() - 1));
sb.append(rest.toCharArray());
sb.append(start);
return sb.toString();
}
}
public class ReverseWords
{
/**
* @param args
*/
public static void main(String[] args)
{
// TODO Auto-generated method stub
ReverseWords reverseWords = new ReverseWords();
System.out.println(reverseWords.swapWords("zhadac"));
System.out.println(reverseWords.reverseWords("the boy ran"));
}
public String reverseWords(String s)
{
StringBuilder sb = new StringBuilder();
String[] strs = s.split("\\s");
for(String str : strs)
{
sb.append(swapWords(str)).append(" ");
}
return sb.toString();
}
public String swapWords(final String s)
{
if(s.length() == 0 || s.length() == 1)
{
return s;
}
StringBuilder sb = new StringBuilder();
sb.append(s.charAt(s.length() - 1));
char start = s.charAt(0);
String rest = swapWords(s.substring(1, s.length() - 1));
sb.append(rest.toCharArray());
sb.append(start);
return sb.toString();
}
}
K size minHeap to solve the problem.
- tczhaodachuan March 11, 2016Loop through the two lists, insert the minHeap until size K. After size K, compare current value with minHeap.peek(). if more then the peek value, remove peek and insert current value, if less than skip. The kth largest number is the peek, after the whole loop.