일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 정수론
- 유클리드 호제법
- 다이나믹 프로그래밍
- 정렬
- 연결리스트 중복제거
- 큐
- 별 찍기
- 이분 탐색
- 문자열제곱
- 브루트포스 알고리즘
- 자료 구조
- 연결리스트 정렬
- 구현
- 임의 정밀도 / 큰 수 연산
- 수학
- 조합론
- 문자열
- KMP알고리즘
- Queue
- 프로그래머스
- LeetCode 83번
- 해시를 사용한 집합과 맵
- 실패함수
- 재귀
- 사칙연산
- 스택
- 큰 수 연산
- LeetCode 83 c언어
- 시뮬레이션
- LeetCode Remove Duplicates from Sorted List in c
- Today
- Total
목록개발 공부 (23)
hahn
개요 과제 중에 read() 함수를 사용할 일이 있어 작성해본다. 내용 read() 함수 내용 header unistd.h prototype ssize_t read(int fd, void *buf, size_t count); parameter fd : 파일 디스크립터 void *buf : 파일을 읽어서 저장할 버퍼 count : 버퍼의 크기 return value (ssize_t) 실패 : -1 성공 : 읽어들인 바이트 수 예시 //ahnstu.txt aaaaa bbbbb ccccc ddddd eeeee #include #include #include #define BUFFER_SIZE 35 int main() { char buff[BUFFER_SIZE]; int fd; ssize_t rd_size; f..
개요 //strlen의 프로토타입 #include size_t strlen(const char* str); 과제를 진행하다보면 size_t라는 자료형이 되게 많이 나왔다. 당시에는 그냥 unsigned int랑 똑같은데 size와 관련되어 사용되는 자료형을 size_t라 부르기로 약속한 걸로 알고 사용했었다. 실제로 아래와 같이 substr 구현할 때 size_t와 int를 비교는 unsigned int로 캐스팅했었다. //내가 구현한 substr #include char*ahn_substr(char const *s, unsigned int start, size_t len) { char* output; int idx; int size; idx = 0; size = ft_strlen(s) - start; ..
문제 상황 스택 구현하다가 시간제한 때문에 Scanner에서 BufferedReader로 교체하려 하는데 push 1 push 2 이런 식으로 입력이 들어올 때가 문제였다. top size empty pop pop pop size empty pop 다른 입력은 이렇게 들어와서 String.split으로 쪼개기에는 곤란했다. 그래서 StringTokenizer라는 클래스를 발견했다. StringTokenizer 속 method constructor / method 설명 StringTokenizer(String str, String delim) delim을 구분자로 하여 str을 나누어 StringTokenizer을 생성한다. StringTokenizer(String str, String delim, boo..
Botherahn :: [백준 - JAVA] 엄청난 부자2 (tistory.com) [백준 - JAVA] 엄청난 부자2 1271번: 엄청난 부자 2 (acmicpc.net) 1271번: 엄청난 부자2 첫째 줄에는 최백준 조교가 가진 돈 n과 돈을 받으러 온 생명체의 수 m이 주어진다. (1 ≤ m ≤ n ≤ 101000, m과 n은 10진수 정수) www.acmicpc.net.. ahnstu.tistory.com 이 문제를 풀면서 도저히 해답이 안 나와서 검색해봤는데 BigInteger을 알게되었다. 기존에 내가 사용하던 숫자 자료형에는 type scope int -2,147,483,648 ~ 2,147,483,647 long -9,223,372,036,854,775,808 ~ 9,223,372,036,..
백준 정렬 문제 풀던 중 시간 초과로 정렬 방법 찾아봐야 하나 싶었는데 이 문장을 보고 학원에서 코드 짤 때 검색해서 사용했던 게 기억이 나 한 번 다시 찾아봤다. 학원 다닐 때 Map, ArrayList 자주 사용했었는데 수료하고 나서 집에서 공부할 때는 그냥 배열만 썼다. 그래서 잊고 있었던 것도 있고, 내장 함수 사용하면 뭔가 내 실력이 아닌 것 같아 꺼렸다. 근데 써보라니까 함 써봐야지 ^^ List arr = new ArrayList(); 숫자 정렬해야하니까 제네릭 Integer 써주고, arr.sort 설명을 보면 뭐라 많이 써있다 암튼 입력받는 자료형이 Comparator인걸 확인했으니까 얘도 이렇게 메서드 확인해보면 여러 가지 있는데 그냥 직감적으로 naturalOrder은 오름차순이고, ..
차트를 그리다 보면 카테고리나 값을 넣어줘야 할 경우가 있다. 이때 데이터는 가변적이기 때문에 그에 맞춰서 입력되어야 한다. 이를 해결하기 위해서는 동적으로 데이터를 만들어서 넣어 줘야 한다. var arr = ['test1', 'test2', 'test3']; var obj = {}; arr.forEach(function(e){ obj[e] = 0; }); 그래서 생각해낸 방법이 객체를 통해서 데이터를 관리하는 것이다. 위 예제를 보면 obj에는 아무것도 담겨있지 않지만 forEach문에서 arr에 담겨있는 값을 속성으로 obj에 추가해 준다 {test1: 0, test2: 0, test3: 0} 그럼 출력 결과는 이렇다. 이처럼 값을 받아와서 특정 값의 개수나 합계를 구할 때 유용하다. 배열 안 데이..
드롭다운 사이드바 고정하기 ahnstu 아무것도 없으면 허전할 것 같아서 추가해둔 코드 참고만 예를 들어 위와 같은 형태의 사이드바가 있다면 나 에 클릭 이벤트를 걸어 class에 active(예시)를 추가하거나 삭제하여 중 display를 none이나 block으로 바꿔 화면에 보이거나 안 보이게 할 것이다. 드롭다운 사이드바 고정하기 ahnstu 아무것도 없으면 허전할 것 같아서 추가해둔 코드 참고만 일단 default로는 none으로 표시되어 사용자가 화면 전환 시 사이드바는 닫혀있는 상태로 표시될 건데 이를 UX 측면에서 보면 되게 불편하지 않을 수가 없다. 그래서 이를 해결하기 위해서 방법을 생각해 봤다. 일단 펼쳐야 할 대상을 식별해야 하기 때문에 어떤 걸로 식별할 수 있을까 생각해 봤다. 나..
어제 배운 것에 개념하나 추가됐다. ResultSet rs = null; rs = pstmt.executeQuery(); while(rs.next()){} 어제랑 상황은 같고, PreparedStatement 객체 생성 시 SELECT * FROM tb_user 쿼리문을 입력했다. executeQuery 메서드는 SELECT 쿼리 결과를 ResultSet 으로 리턴해주고, 조회된 값을 행으로 담고 있다. next()메서드는 행 하나를 읽어주고 커서를 다음 행으로 넘긴다. 그러니까 while 전에 next 메서드가 잘 되나 확인해본다고 위에 서술하면 두번째 행부터 출력되므로 확인 후 주석 처리 해야한다.
학원에서 db 배운다고 mysql, heidisql 설치했다. 루트로 로그인 후 db생성하고 일반사용자 계정 생성 및 접근권한 부여했다. 일반사용자 계정 로그인 후 table생성하고 입력, 수정, 삭제, 조회해봤다. 일단 테이블 생성 문법에 대해 따로 배우진 않았지만 기본적으로 변수와 데이터타입(가변길이) 지정해두고 추가적으로 NOT NULL과 같이 값을 비우지 못하게하는 등 추가 설정 하는 듯 나중에 자세히 배우면 다시 포스팅해야겠다. 이후 프로그램 순서는 드라이버 로딩하고 Class.forName("com.mysql.jdbc.Driver"); Connection객체로 DB연결한다. Connection conn = null; String jdbcDriver = "jdbc:mys..
화면 구성 시 공통되는 부분은 따로 jsp파일 만들어서 로 불러오면 된다. 코드 전체를 끌어오는 개념이다보니 분리할 때 주의할 것. 처음 코드 작성 시 조건 별 alert를 띄우겠다고 사용하여 코드 분리를 했는데(request.getContextPath() 때문에) 위 처럼 작성하면 간단하게 해결된다. 충분히 응용 가능한 부분였는데 왜 좀 더 생각을 안했는지 의문; location.href 는 js에서 페이지 이동 login.jsp session.setAttribute("S_ID", dbid); session.setAttribute("S_NAME", dbname); session.setAttribute("S_LEVEL", dblevel); index.jsp String S_ID = (Str..