알고리즘 문제 풀이 메소드 정리용 (업데이트 지속)

uHan2·2020년 11월 3일
1

TIL.Algorithm

목록 보기
4/12

안녕하세요.
지금까지 계속 저만의 기술 블로그를 만들어야지, 만들거야
마음으로만 다짐하다가 인제야 시작하게 되었습니다.
비록 시작은 코딩일기지만, 그 끝은 창대하게
어엿한 개발자 블로그로 성장할 수 있도록 노력하겠습니다.


알고리즘 문제를 풀면서 몰랐던 메소드 혹은 잘 안써봤던 메소드 정리용 공간.

  • 문제를 제대로 읽자
    • 꼭 문제 제대로 안읽고 주어진 입출력 갖고 규칙성 찾아서 풀려고함
    • 덕분에 문제에 대놓고 주어진 정보 없어서 틀리고 헤매고 난리남
    • 꼭 제대로 다 읽자

  • int 를 2진법 String으로 변환
    • 변환하고자 하는 int 를 2진법으로 바꾸고 string 타입으로 변환
  int num = 어떤 수;
  String s = Integer.toBinaryString(num);
  • 8진수, 16진수로도 가능
  int num = 어떤 수;
  String s1 = Integer.toOctalString(num);
  String s2 = Integer.toHexString(num);
  • Comparator 일반적으로 작성할 때
  Collections. 혹은 Arrays.sort(이름, new Comparator<타입>() 
  {
      @Override
      public int compare(타입 o1, 타입 o2) // 메소드를 오버라이드 하여 재정의한다.
      {
          return o1.compareTo(o2)    // o1, o2 는 순서대로 들어오는 것이 아니라 엇갈려서 들어온다.(중요)
                 	                   // 그리고 필요한 조건을 걸고 return이 음수면 스왑하고 아니면 그대로.
      }
  });
  • HashMap<> 에서 Key, Value 출력
Map<type, type> map = new HashMap<>();

for(key type i : map.keySet()) //key type "i" 로 map의 키셋 설정
{ 
    System.out.println("[Key] : " + i + " [Value] : " + map.get(i));
}
  • HashMap<> 에서 Value로 Key 찾기

public static <key type, value type> K getKey(Map<key type, value type> map, value) 
{
    for (key type i : map.keySet()) 
    {
        if (value.equals(map.get(i))) 
        {
            return key; // 동일한 key 들을 넣고 싶으면 list.add(key)
        }
    }
        return null;
}


  • 각각 메소드별로 게시글 새로 생성 중. 해당 게시글은 파기될 예정
profile
For the 1% inspiration.

0개의 댓글