https://school.programmers.co.kr/learn/courses/30/lessons/181900 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Algorithm Arrays.sort()로 배열을 오름차순 정렬, j를 indices의 pointer로 선언한다. my_string을 돌며 각 문자마다 j 인덱스 범위가 초과되지않고, 문자 인덱스 i가 j와 같다면 해당문자를 건너뛴다. (j++) 만약 위의 경우가 아니라면, ans에 문자를 추가한다. cf) 내림차순 정렬 (JAVA) Arrays.sort(arr, Collections.reve..
전체 글
https://school.programmers.co.kr/learn/courses/30/lessons/181901 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Algorithm 인덱스 구간을 [start,end]로 지정한다. 그 후 [start,end]에 해당하는 구간을 reverse한 후 기존 글자의 전후와 이어붙인다. Python def solution(n, k): return [i for i in range(k,n+1,k)] Java class Solution { public int[] solution(int n, int k) { int coun..
https://school.programmers.co.kr/learn/courses/30/lessons/181902 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Algorithm 길이 52의 정수 배열 선언 문자열을 순회하면서 각 알파벳의 개수를 센다. 대문자인 경우 answer[c - 'A']++;, 소문자인 경우 answer[26 + c - 'a']++; 를 통하여 해당 알파벳의 개수 증가 cf ) 'A'의 ASCII 값(65) 'a'의 ASCII 값(97) 알파벳 개수 26 Python def solution(my_string): answer = ..
https://school.programmers.co.kr/learn/courses/30/lessons/181904 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Python def solution(s, m, c): return s[c-1::m] Java class Solution { public String solution(String my_string, int m, int c) { StringBuilder sb = new StringBuilder(); int startIdx = c - 1; while(startIdx < my_string.length(..
https://school.programmers.co.kr/learn/courses/30/lessons/181905 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Algorithm [s,e]구간을 reverse후 해당 구간을 기존문자열과 합치기 Python def solution(my_string, s, e): return my_string[:s]+my_string[s:e+1][::-1]+my_string[e+1:] Java class Solution { public String solution(String my_string, int s, int e) {..

Future는 미래에 받아올 값이다. Future name = Future.value('쩡이'); Future number = Future.value(1); Future isTrue = Future.value(true); delayed는 2개의 파라미터를 받는다. 1번 파라미터 - 지연할 기간 (얼마나 지연할건지) Duration 2번 파라미터 - 지연 시간이 지난 후 실행할 함수 Future.delayed(Duration(seconds: 2), (){ print('Delay 끝'); }); 동기 코드 예시 void main() { addNumbers(1, 1); addNumbers(2, 2); } void addNumbers(int number1, int number2) { print('계산중: $nu..
https://school.programmers.co.kr/learn/courses/30/lessons/181908 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Python def solution(my_string, is_suffix): return int(my_string.endswith(is_suffix)) Java class Solution { public int solution(String my_string, String is_suffix) { int answer = 0; for(int i = 0; i

1장 - 사용자 수에 따른 규모 확장성 1장에서는 규모 확장성과 관계된 설계 문제를 푸는 데 쓰일 유용한 지식들을 알아본다. 📖 단일 서버 모든 컴포넌트가 단 한 대의 서버에서 실행되는 간단한 시스템을 설계해보면 위와 같다. 웹 앱, 데이터베이스, 캐시 등이 전부 서버 한 대에서 실행된다. 사용자 요청 흐름은 다음과 같다. 사용자 요청 흐름 사용자는 도메인 이름(~.com)을 이용하여 웹사이트에 접속한다. 접속을 위해서 도메인 이름을 도메인 이름 서비스 (DNS,Domain Name Service) 에 질의하여 IP주소로 변환한다. DNS 조회 결과로 IP 주소가 반환된다. 해당 IP주소로 HTTP(HyperText Transfer Protocol) 요청이 전달된다. 요청 받은 웹 서버는 HTML 페이지..

🪜요즘의 나날들 최근에는 조급해하지 않고, 충분히 휴식하면서 + 기초부터 차근히 다지는 시간을 보내고 있다. 이와 함께 지식들을 쌓고 성장하고 싶다는 갈증이 계속 생기는 요즈음이다. 갈피를 못잡아 휘청이더라도 이를 핑계 삼지말고, 최소한 무언가라도 하면서 불안해 하자는 다짐을 한다. 나의 처참한 CS 지식과 개발 실력에 스스로 충격을 먹고 실망했지만, 나는 나다. 빠르게 많이 부족함을 인정하고 마음을 다잡고 하나하나 꾸준히 공부하고있다. 최근에는 진로에 대한 고민이 깊어졌다.채용설명회와 상담을 이곳저곳 다니며 나에게 맞는 직무를 찾아보려고 하고 있다.동시에 내가 채워야할 점들과 부족함들이 너무 잘 느껴져서,초심을 잡고 기초부터 차근차근 공부를 다시 열심히 하고 있다ㅠ. 불안하더라도 당연한거고, 견디면 되..

리스트(List), 세트(Set), 맵(Map) List blackPink = ['로제','지수','리사','제니']; print(blackPink); print(blackPink.asMap()); print(blackPink.toSet()); Map blackPinkMap = blackPink.asMap(); // Set to List print(blackPinkMap.keys.toList()); print(blackPinkMap.values.toList()); // List to Set Set blackPinkSet = Set.from(blackPink); // result [로제, 지수, 리사, 제니] {0: 로제, 1: 지수, 2: 리사, 3: 제니} {로제, 지수, 리사, 제니} [0, 1, 2..