Code Snippet for Interview


Prefer concise code

  • less code, faster to write,
  • reduce the chance to make mistake

Array to set

Arrays.stream(wrapperArray).collect(Collectors.toSet())
Arrays.stream(primitiveArray).boxed().collect(Collectors.toSet())
count.put(word, count.getOrDefault(word, 0) + 1);
Map<String, Long> counted = list.stream()
  .collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
Map<Character, Long>  astring.chars().mapToObj(ch -> (char) ch)
  .collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));

char[] to Stream

Stream<Character> stream = CharBuffer.wrap(list).chars().mapToObj(ch -> (char)ch);
Stream.of(int1, int2, ...).min(Integer::compare).get();

Character.isLetter/isWhitespace

Arrays.toString(array)

https://leetcode.com/problems/expressive-words/solution/

for (int i = 0; i < N; ++i) {
    if (== N-1 || ca[i] != ca[i+1]) {//\\ 
        sb.append(ca[i]);
        counts.add(- prev);
        prev = i;
    }
}

Labels

adsense (5) Algorithm (69) Algorithm Series (35) Android (7) ANT (6) bat (8) Big Data (7) Blogger (14) Bugs (6) Cache (5) Chrome (19) Code Example (29) Code Quality (7) Coding Skills (5) Database (7) Debug (16) Design (5) Dev Tips (63) Eclipse (32) Git (5) Google (33) Guava (7) How to (9) Http Client (8) IDE (7) Interview (88) J2EE (13) J2SE (49) Java (186) JavaScript (27) JSON (7) Learning code (9) Lesson Learned (6) Linux (26) Lucene-Solr (112) Mac (10) Maven (8) Network (9) Nutch2 (18) Performance (9) PowerShell (11) Problem Solving (11) Programmer Skills (6) regex (5) Scala (6) Security (9) Soft Skills (38) Spring (22) System Design (11) Testing (7) Text Mining (14) Tips (17) Tools (24) Troubleshooting (29) UIMA (9) Web Development (19) Windows (21) xml (5)