전체 글

https://school.programmers.co.kr/learn/courses/30/lessons/181909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Python def solution(my_string): return sorted(my_string[i:] for i in range(len(my_string))) Java import java.util.Arrays; class Solution { public String[] solution(String my_string) { String[] answer = new String[my_string..
https://school.programmers.co.kr/learn/courses/30/lessons/181911?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Python def solution(my_strings, parts): answer = "" for i, (s, e) in enumerate(parts): answer += my_strings[i][s:e+1] return answer Java import java.util.*; class Solution { public String solution(String[]..
https://school.programmers.co.kr/learn/courses/30/lessons/181912 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Algorithm 해당구간을 잘라 숫자로 형변환후, 비교하여 k보다 크면 배열에 추가 Python def solution(intStrs, k, s, l): return [int(intstr[s:s+l]) for intstr in intStrs if int(intstr[s:s+l]) > k] Java import java.util.ArrayList; class Solution { public in..
동적 배열 크기가 고정되어 있어 할당한 크기보다 많은 갯수의 데이터를 저장할 수 없는 배열과는 달리 유동적으로 저장공간을 resize할 수 있는 자료구조이다. 정적 배열과 동적 배열의 차이점은 초기화 시 크기를 지정할 필요가 없다는 것이다. 다양한 언어에서 동적 배열에는 기본 크기가 할당될 수 있다.(예를 들어 Java는 10이고, C#은 4이다.)그러나 이들은 운영 체제에 의해 동적으로 크기가 조정된다. 동적(Dynamic) 프로그래밍 언어 중 하나인 파이썬은 대부분의 동적 언어들이 그렇듯 정적 배열을 지원하지 않고, '리스트(list)' 자료형만을 동적 배열로써 제공한다. 동적 배열의 동작원리 배열이 동적인 경우, 용량이 부족할 때 다른 요소를 추가하는 것은 원래 크기의 두 배인 새로운 배열로 값들을..
https://leetcode.com/problems/remove-element/ LeetCode - The World's Leading Online Programming Learning Platform Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com Algorithm Input: nums = [3,2,2,3], val = 3 Output: 2, nums = [2,2,_,_] 위와 같이 val을 제거한 배열을 리턴해야한다.각 원소를 순회하면서,원소가 val과 값이 다르다면 l p..
· Flutter
클래스 정의는 설계서를 만드는 것이고, 클래스로 결과를 만들어 낸 것은 Instance라고 한다. void main() { Idol blackPink = new Idol( 'BlackPink', ['지수','제니','리사','로제'], ); // new 생략가능 print(blackPink.name); print(blackPink.members); blackPink.sayHello(); blackPink.introduce(); Idol bts = Idol( 'BTS', ['RM','정국','뷔','지민','제이홉','슈가','진'], ); print(bts.name); print(bts.members); bts.sayHello(); bts.introduce(); } class Idol { String n..
https://school.programmers.co.kr/learn/courses/30/lessons/181913 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Algorithm 인덱스 구간을 [start,end]로 지정한다. 그 후 [start,end]에 해당하는 구간을 reverse한 후 기존 글자의 전후와 이어붙인다. Python def solution(my_string, queries): for start, end in queries: my_string = my_string[:start] + my_string[start:end+1][::-1] +..
https://leetcode.com/problems/remove-duplicates-from-sorted-array/description/ LeetCode - The World's Leading Online Programming Learning Platform Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com Algorithm 처음 index 값을 1로 저장해놓는다.그 후 r 포인터로 반복문을 돌면서 nums[i] 와 nums[i+1] 이 달라진다면 중복된 값이 끝났다는 뜻이므로..
배열에서 읽기 각 배열 인덱스는 RAM의 주소에 매핑되기 때문에, 요소의 액세스는 즉시 이루어진다. 요소에 액세스하는 데 걸리는 시간은 입력 배열의 크기 영향을 받지 않는다. * O(1)은 항상 빠른가? 그렇지않다. O(1)이 실제로 의미하는 것은 작업 수가 입력 크기에 비해 일정하다는 것이다. 배열 순회 크기 배열 순회 작업수가 선형이다.( O(N) ) for i in range(len(myArray)): print(myArray[i]) # OR i = 0 while i < len(myArray): print(myArray[i]) i += 1 배열에서 삭제 배열 끝에서 삭제 엄격한 형식의 언어에서는 모든 배열 인덱스가 초기화 시 빈 배열을 나타내는 기본값으로 채워진다 (0, null, -1). 그 자체..
· Flutter
var type은 변수의 type을 유추한다. var name3 = '블랙핑크'; var number = 20; // 변수의 값이 실행되는 순간에 어떤 타입인지 알려준다 print(name3.runtimeType); 글자를 이어쓸때는 +.${variable} 를 사용한다. String name = '블랙핑크'; String name2 = '제니'; print(name + ' ' + name2); print('${name} ${name2}'); print('$name $name2'); print('$name.runtimeType') // x. name까지만 변수 인식. {}해주어야 함 var는 한번 선언하면 다른 타입으로 중간에 변경이 불가능하다. dynamic은 변경 가능하다. dynamic name =..
고쩡이
고민보다 Go