Python string 함수 연습문제

1번 문제. to_snake_str() 구현하기 Camel형태의 문자열을 입력받으면 Snake형 문자열로 변경하는 함수 구현 예시) 입력: HelloPython 출력: hello_python 과정 : 대문자를 소문자로 고치면서 “_”문자를 더한다. => 가장 앞에 있는 “_”는 없앤다. Hint) str.isupper(), str.replace(), str.lower(), str.strip(‘_’) 1번 설명 string을 한글자씩 돌면서, 대문자인 경우엔 해당 문자(i) 대신 “_”와 i를 소문자로 바꿔서 대체한다.(replace(), lower()) return할 때 strip함수로 가장자리의 […]

Read more
Day+3. axios로 db 삽입, 수정, 삭제, 조회

오늘은 어제 하던 data insert에 이어서 select, update, delete를 테스트했다. routing과 sequelize를 이용한 data 조작은 의외로 재밌었다. 단, 항상 주의할 점은 데이터를 통신할 때 key는 양측에서 동일해야 한다. ex) data: {‘key’:value}, data insert client에서는 async, await, axios(POST)를 이용해 업데이트할 데이터 전송 성공했다는 response를 받으면 알람을 띄우고, window reload server에서는 create메소드를 이용해 데이터를 삽입, 성공할 경우 […]

Read more
JAVA 선택정렬 알고리즘을 이용한 랭킹구하기

선택 정렬 개념 선택 정렬(selection sort)은 제자리 정렬 알고리즘의 하나로, 다음과 같은 순서로 이루어진다. 주어진 리스트 중에 최소값을 찾는다. 그 값을 맨 앞에 위치한 값과 교체한다(패스(pass)). 맨 처음 위치를 뺀 나머지 리스트를 같은 방법으로 교체한다. 비교하는 것이 상수 시간에 이루어진다는 가정 아래, n개의 주어진 리스트를 이와 같은 방법으로 정렬하는 데에는 Θ(n2) 만큼의 시간이 걸린다. – 위키백과 그림으로 이해하기 […]

Read more
JAVA 버블정렬 알고리즘 이해하기

버블 정렬의 개념 거품 정렬(어: bubble sort, sinking sort)은 두 인접한 원소를 검사하여 정렬하는 방법이다. 시간 복잡도가 {\displaystyle O(n^{2})}로 상당히 느리지만, 코드가 단순하기 때문에 자주 사용된다. 원소의 이동이 거품이 수면으로 올라오는 듯한 모습을 보이기 때문에 지어진 이름이다 – 위키백과 코드와 그림으로 이해하기 보기와 같이 가면서 계속 검사를 하기때문에 시간복잡도가 상당히 느리다. 그러나 알고리즘을 처음 접하기에는 그림으로 이해하기에도 간단해서 […]

Read more
JAVA 배열 순서 뒤집기

배열을 받으면 순서를 뒤집는 프로그램 작성 예시) 입력: {1, 2, 3, 4, 5} 출력: {5, 4, 3, 2, 1} 처음 요소와 마지막 요소를 교환하고, 범위를 좁혀간다. 홀수와 짝수의 구분이 상관없음 코드 note! arr.length – 1이 arr의 마지막 index이다. length/2를 할 경우, 홀수는 center index이며, 짝수는 center+1 index이다 (python median 포스트를 보면 이해가 될 듯) 그렇기 […]

Read more
Python 리스트에서 빈도수가 가장 높은 요소 출력하기

리스트를 입력받아서 빈도수가 가장 높은 요소 출력하는 프로그램 예시 ) 입력: [‘a’, ‘b’, ‘c’, ‘a’, ‘a’, ‘b’, ‘c’] 출력: ‘a’ 빈도수가 같은 요소가 2개 이상일 경우, 가장 앞에 있는 요소 출력 방법 1. 함수를 사용하지 않고, 로직만들기 2. count, max, index 함수를 이용한 로직만들기 1번과 2번의 공통점 : 전달받은 리스트와 크기가 같은 count리스트를 만들어서, value가 […]

Read more
Day+2. DB구축~연동, Sequelize연동, 데이터 삽입(insert)

2020년 11월 10일 느낀 점: DB, Back단은… 쩝 DB 구축(mariadb) DB는 남자친구 서버에 mariaDB로 구축하였다. MongoDB를 할까했지만, 일단 정형화된 DB를 먼저 겪어보고 싶어서 MariaDB로 선택! Sequelize 설치 Sequelize는 Node.js 기반의 ORM으로 Object-Relation Management이다. 쉽게 말하면 테이블과 객체 연동을 해준다는것 model 설계 (DB의 table 역할) 각 필요한 Table을 js로 설계하고, index.js 파일에서 관리한다. 나는 아직 따라하는 […]

Read more
JAVA 비트(bit) 연산자

비트 연산자 : 비트(bit) 단위로 논리 연산과 이동 할 때 사용하는 연산자 비트 연산자 설명 & AND 연산 (대응되는 비트가 모두 1이면 1 반환) | OR 연산 (대응되는 비트 중 하나라도 1이면 1 반환) ^ XOR 연산 (대응되는 비트가 서로 다르면 1 반환) ~ NOT 연산 (비트가 1이면 0으로, 0이면 1로 반전) << left shift […]

Read more
JAVA : BufferedReader사용해서 BMI 지수구하기

BufferedReader 사용 (import java.io.*); BufferedReader 설명 String으로 입력형태가 고정되어 있다. Enter로만 구분이 된다. = stringTokenizer나 String.split으로 구분지어줘야함 속도가 Scanner보다 좋다.(코테할때 해답이 거의 bufferedreader) Error handling을 해주어야 함. BMI 지수구하기에 응용하기

Read more
Python 중앙값 구하기 (median)

중앙값 개념 중앙값(영어: median)는 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미한다. 예를 들어 1, 2, 100의 세 값이 있을 때, 2가 가장 중앙에 있기 때문에 2가 중앙값이다. 값이 짝수개일 때에는 중앙값이 유일하지 않고 두 개가 될 수도 있다. 이 경우 그 두 값의 평균을 취한다. 예를 들어 1, 10, 90, 200 네 […]

Read more