본문 바로가기

배열4

스위프트 공부_ 데이터 타입 심화 (컬렉션형) 지난번에는 데이터 타입 안심, 타입 별칭, 튜플에 대해 알아보았다. 오늘은 그것에 이어서 컬렉션형에 대해 알아보고자 한다. 컬렉션형(Collection Type) swift에서는 튜플 외에도 많은 수의 데이터를 묶어서 저장하고 관리할 수 있도록 켈렉션 타입을 제공하고 있다. 컬렉션 타입에는 배열(Array), 딕셔너리(Dictionary), 세트(Set) 등이 있다. 그래서 우선은 컬렉션의 대표적인 세가지 타입에 대해 알아볼까한다. 1) 배열(Array) 배열은 같은 타입의 데이터를 일렬로 나열한 후 순서대로 저장하는 형태의 컬렉션으로 각기 다른 위치에 같은 값을 저장할 수 있다. 순서대로 저장이 된다는 점과, 동일한 값을 여러번 저장할 수 있다는 특징이 있다. 배열 타입을 선언하는 방법은 다양하다. 일.. 2021. 6. 6.
프로그래머스_월간 챌린지 코드 시즌1_ 두개 뽑아서 더하기_Python, JS 어제 자바로 풀었던 문제를 파이썬과 자바 스크립트로 다시 풀어보았다. Python 파이썬의 경우에는 나는 자바와 같은 방식으로 풀었다. 나는 이렇게 풀었는데 정말 자바와 똑같이 풀어 설명할 것도 없다. 그래서 다른 사람들의 코드를 봤는데 어떤 사람은 answer를 set을 사용하여 중복값을 배제하는 식으로 풀었고, (배열에 set을 쓰면 해당 배열의 중복된 값을 제거한다.) 어떤 사람은 combination이라는 함수를 가져와 풀었다. 역시 대단한 사람들이 많아 보인다. combination은 조합이 배열과 조합의 개수를 지정해주면 해당 배열에서 지정된 개수로 조합이 가능한 배열 들을 재구성해준다. 그것을 이용해 더하고, 그것을 set적용을 하여 중복값을 배제하는 방식이었다. wikidocs.net/16.. 2020. 12. 30.
프로그래머스_월간 챌린지 코드 시즌1_ 두개 뽑아서 더하기_Java programmers.co.kr/learn/courses/30/lessons/68644 코딩테스트 연습 - 두 개 뽑아서 더하기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 위의 문제를 풀어보았다. 나의 풀이는 이러했는데 ArrayList를 활용하여 더한 값을 추가하는 식으로 한 다음 조건을 활용하여 중복 값을 제외해 보았다. 다른 사람의 문제풀이를 보았을 때 Map을 이용해서 푸는 것을 보았는데 중복 값을 못 넣는다는 점을 이용하여 풀어낸 것이 정말 참신했다. 2020. 12. 28.
프로그래머스 배열 1번문항_ Java, Python, JavaScript Java에서는 Array함수를 import 해서 배열을 정렬하는 것이 핵심이었다. 그렇지 않았다면 반복문을 많이 써서 구했을 것이다. System.arryacopy는 일정부분을 잘라내어 복사하는 기능이며 Array.sort로 정렬을 해준다. JavaScript는 Slice와 sort를 이용하는 방법으로 풀었는데 sort의 경우 그냥쓸 경우에는 배열이 제대로 이루어지지 않는 경우가 발생한다. 따라서 (a,b) => a-b를 추가하여 오름차순으로 정렬할 것임을 명시해야 한다. Python의 경우 우선 설치부터 코딩을 해보는 게 너무나 오랜만이라 시간도 오래 걸리고 오류도 많이 발생했다. 꾸준히 공부할 필요성을 느꼈는데 그래서 조금 코드가 깨끗하진 않다. sort와 append, for를 활용하는 것이 핵심이.. 2020. 12. 24.