본문 바로가기

반응형
개인정보방침 보호되어 있는 글입니다. 더보기
xml, convert to data binding layout 풀리다? 안드로이드 스튜디오로 매일매일 xml을 짰다.... databinding을 매일매일 썼다.... 하지만 어느샌가 xml의 layout부분을 쉽게 가져다 쓸 수 있는.... 알트 엔터를 눌렀을 때 나오는.... convert to data binding layout이 사라졌다!!!! 알트 엔터(맥이라면 option+enter)로 얼마나 ... (일일이 쓰고 계신 분 없으시죠?) 편한 기능인데!!!! 하지만 아무리 검색해도 나오지 않았...다... 하지만 나는 끈질기게 찾아냈다.... 1) 더보기
윤성우님의 열혈 C 프로그래밍... 처음부터 공부하기 위해, 한달에 한권씩 운영체제부터 공부해보고 있다. 1월에 운영체제를 다 읽지 못해 정리는 못했고, 2월에도 읽으면 늘어질거 같아 우선, 정해놓은 책을 읽고 정리하기로 했다. 열혈 C프로그래밍 책은 예전에 사 놓은 책으로, 처음 다 완독했다...거의 1~년만인듯..하다... 반성중... 책을 일고 나선, 초보자도 쉽게 이해할 수 있는 설명과 예제가 있는 듯하다. 역시 깊게는 들어가지 않지만 쭉 읽기엔 좋은 책으로 생각이 된다. 필자 역시 공부 목적은 기본 개념 위주이기에, 굳이 필요하지 않다고 생각된 부분은 공부하지 않았다. 공부하면서 재밌는 부분이나 생각나는 부분에 대해 적어본 글이 될 것이다. Chapter01 이것이 C언어다 프로그래밍 언어란 컴퓨터와의 대화에 사용되는 일종의 대화.. 더보기
완전탐색 - 카펫 완전탐색 - 카펫(programmers.co.kr/learn/courses/30/lessons/42842?language=kotlin) 을 풀어봤습니다. fun Level_2_카펫(brown: Int, yellow: Int): IntArray { val sum = brown + yellow val half = sqrt(sum.toFloat()).toInt() val divisors = mutableListOf() for (i in 1..half) { if (sum % i == 0) { divisors.add(i) divisors.add(sum / i) } } return setResult(divisors.sorted().toSet(), yellow) } fun setResult(set: Set, yell.. 더보기
완전탐색 - 모의고사 완전탐색 - 모의고사(programmers.co.kr/learn/courses/30/lessons/42840) 를 풀어봤습니다. fun Level_1_모의고사(answers: IntArray): IntArray { var answer = intArrayOf() val test01 = arrayOf(1, 2, 3, 4, 5) val test02 = arrayOf(2, 1, 2, 3, 2, 4, 2, 5) val test03 = arrayOf(3, 3, 1, 1, 2, 2, 4, 4, 5, 5) val map = hashMapOf() answers.forEachIndexed { index, i -> if (i == test01[index%5]) map[1] = map.getOrDefault(1, 0) + 1.. 더보기
정렬 - H-index 정렬 - H-index(programmers.co.kr/learn/courses/30/lessons/42747?language=kotlin)를 풀어봤다. 풀이는 아래와 같다. fun solution(citations: IntArray): Int { citations.sortedDescending().forEachIndexed { index, i -> if (index >= i) { return index } } return citations.size } 처음엔 문제가 이해가 안갔다... 최초 풀이는 아래와 같다 var answer = 0 for (i in citations.indices) { val h_index = citations[i] var upCount = 0 var downCount = 0 fo.. 더보기
정렬 - 가장 큰 수 정렬 - 가장 큰 수(programmers.co.kr/learn/courses/30/lessons/42746?language=kotlin)를 풀어봤다. 풀이는 아래와 같다. fun solution(numbers: IntArray): String { var answer = "" numbers.map { it.toString() }.sortedWith(Comparator { a, b -> (b + a).compareTo(a + b) }).forEachIndexed { index, s -> if (index == 0 && s == "0") { return "0" } answer += s } return answer } numbers를 map 함수를 사용해 string 형태로 바꾼다. 정렬과 비교를 위해 sor.. 더보기
정렬 - K번째 수 정렬 - K번째 수(programmers.co.kr/learn/courses/30/lessons/42748?language=kotlin)에 관해 Kotlin 으로 풀어봤다. 2018년에 같은 문제를 풀었었다.. 기억도 안나고... 해당 코드(cnwlcjf.tistory.com/35)를 봤는데 우와... 많이 발전했다? 고 느꼈다 ㅋㅋㅋ 첫번째 풀이는 아래와 같다. fun solution(array: IntArray, commands: Array): IntArray { var answer = intArrayOf() val list = mutableListOf() commands.forEach { intArr -> val i = intArr[0] val j = intArr[1] val k = intArr[2.. 더보기
Part1. 운영체제와 컴퓨터(chap 02) Chapter 02 - 컴퓨터의 구조와 성능 향상 컴퓨터는 필수 장치인 CPU(중앙 처리 장치)와 메인메모리, 주변 장치인 입력장치, 출력장치, 저장장치로 이뤄져 있다. 이러한 부품들은 버스로 연결되는데, 여기서 말하는 버스란, 각 장치를 연결하는 선의 집합이자 데이터가 지나다니는 통로를 의미한다. 오늘날의 컴퓨터는 폰노이만 구조를 따르며, "모든 프로그램은 메모리에 올라와야 실행할 수 있다."는 특징을 갖는다. 운영체제의 여러 현상을 돕기 위해 요리사 모형이란 것이 있는데, 요리사는 CPU, 도마는 메모리, 보관 창고는 저장장치에 비유되며, 보관 창고에 있는 재료를 도마로 옮기는 주방 보조와 채소를 다듬거나 하는 등의 보조 요리사도 있다. 즉, 요리 방법을 결정하는 것은 운영체제의 프로세스를 관리하는 .. 더보기
Part1. 운영체제와 컴퓨터(chap 01) 올해는 공부를 좀 해보자. 개발과 관련된 글은 미디움에, 지식 및 정리는 티스토리에 쓸 예정이다. 차근차근 책을 읽고 정리하자. 제발 올해는 꼭 기본 지식 쌓기에 성공하자!!!! 올해 목표 다 이루기!!! Chapter 01 운영체제의 개요 운영체제는 윈도우, 맥, 유닉스, 리눅스, iOS, Android 등을 일컫는 말이며, MP3, 스마트폰, 전자사전 등에도 운영체제가 있다. 컴퓨터는 운영체제가 없어도 잘 동작하지만, 없는 컴퓨터는 만들 당시에 구현한 기능 외 아무것도 수행할 수 없다. 운영체제가 있다면, 기능을 추가하거나 성능 향상, 자원 관리 등을 기대할 수 있다. 운영체제의 역할 중 하나인 자원관리는 우리가 흔히 들어본, 인터페이스(interface)"라는 것을 통해 진행되는데, 자원(HDD, .. 더보기