변화만 생기는 곳만 체크한다고 하셨는데, 예로 들어 한 행의 두 원소를 바꾸면 그 두 원소의 열과 그 행을 살펴보면 된다고 하셨는데, def get_best(y, x): global N, matrix best = 0 # columns bef = '-' value = 0 for j in range(N): if bef == matrix[y][j]: value += 1 else: value = 1 bef = matrix[y][j] best = max(best, value) # rows bef = '-' value = 0 for i in range(N): if bef == matrix[i][x]: value += 1 else: value = 1 bef = matrix[i][x] best = max(best, value) return best 왜 바꾼 원소 기준으로 그 원소 위치의 하나의 행과 열만 보는걸로 코드를 짜셨나요? 설명과 코드가 달라서 약간 이해가 안 갑니다 ㅜ
강사님, 설명 중 일부 수정이 필요할 것 같습니다. KB는 십진수 단위로, 1000 바이트입니다. KiB는 이진수 단위로, 1024 바이트입니다. 두 단위 모두 올바른 표현이며, 사용하는 맥락에 따라 다릅니다. 십진수 기준에서는 KB를, 이진수 기준에서는 KiB를 사용할 수 있습니다. 따라서, "킬로바이트라는 말은 잘못된 표현"이라고 말씀하신 부분은 잘못된 것입니다. 수업중 말씀에 엄격히 구분할 필요없다고 강조하신 부분에 대해서는 어떤 의미인지 이해했습니다.
이해가 어려운 섹션이나 영상 설명은 질문으로 꼭 남겨주세요. 기출문제를 풀다가 막힌 개념이 있나요? 질문으로 회차나 번호, 개념을 예시로 질문해주세요. 답변에 도움이 됩니다. 이론 문제는 통합본 PDF 파일로 제공될 예정입니다. (6월 중 업로드 예정) 합격을 가르는 것은 역시 코드해석문제. 이론을 외울 시간이 없다면 코드에 익숙해지고, 중요 개념을 몇 가지 외워가면 합격할 수 있습니다. 클래스 내의 메서드인 public static Connection getinstance()가 static 형태로 작성된 이유는 클래스 내의 정적변수인 private static Connection _inst;를 접근하기 위함인가요?
유형2에서 전처리 전에 나머지(스탠다드스켈러, 트레인_테스트, 랜포만) 하고 돌렸을때 에러 떨어져서... 긴장해서 시간보내다가...(라벨인코딩이나 겟더미 를 했어햐 하는데... )범주3개를 그냥 지워는 형태로 하고. 랜포하고 400대의 평가점수... 그랬더니....유형2의 점수가 10점 주네요.. 나머지1,3도 모르는 문제+센스부족(오즈비5배)+문제이해부족(유의한 것 쓴 부분도 꺼꾸로 쓴 듯하고요) 각각 틀려버려서 불합격했습니다만... 궁금한점은... 전에 1년짜리로 했는데... 1달 단위로 수강하는게 가능한 것 처럼 보이는데....가능한지요 ? 그리고 기출에서 풀이는 있는데...빈노트형태가 없는 것도 있는데,... 이부분도 만들어져 있었으면 좋겠습니다. 그리고 별도 최종 모의고사도 1~2개 추가 되었으면 참 좋겠습니다.. 감사합니다.
안녕하세요! 강사님 서울시 공공데이터 API를 이용해 데이터를 추출하는 것을 보고 저도 넥슨 오픈 API를 가지고 데이터를 출력해보려고 DAG과 PythonOperator를 만들어봤는데요, 보통 민감정보는 .env파일에다 적어놓고 가져와서 사용하기에 이렇게 짰는데, .env파일은 gitignore에 들어가니 dag실행시 읽어올 수가 없는데 이런 경우는 어떻게 할까요...? 강의에서 보여주신 것처럼 서울시 공공 api에서 simplehttpoperator를 사용하고, airflow웹에서 variable 변수를 사용했듯이 이것도 이렇게 해야할까요..?!
list의 시간복잡도를 설명하실 때 visited = [True, True, False, True, False, True, False] # if visited[3] == True: if visited[3]: print("room number 3 visited") 이 코드에서 입력값 n에 따라 visited의 길이가 n으로 바뀌는 거면 visited 리스트를 n개의 원소로 초기화하는데에 걸리는 시간은 O(n)이므로 , if visited[3]: 이부분에서의 시간복잡도가 O(1)이여도 코드의 총 시간 복잡도는 O(n) 아닌가요 ??
안녕하세요. 비전공자로 배치 프로그램에 관심이 많아서 해당 강의를 듣다가 커서 방식과 페이징 방식을 스프링 배치에서 사용할 때 고려사항과 관련하여 질문이 있습니다. 커서가 페이징 방법에 비해 데이터 일관성이 보장이 쉽고 속도도 더 빠른 것으로 알고 있습니다. 그리고 청크 기반 배치 처리 로직으로 구현한다면, 커서 기법을 사용하는 경우에도 페이징 방법처럼 트랜잭션 단위를 청크 크기만큼 나눌 수 있을 텐데요. (페이징에서 chunk와 paging 단위를 같이 하는 것처럼 커서에서도 chunk와 fetchsize를 같게 해주면 될 것으로 고려합니다.) 그리고 멀티 스레드를 고려한다면, SynchronizedItemStreamReader로 reader 영역을 감싸서 처리할 수도 있는 걸로 알고 있습니다. 그렇다면, 이러한 상황 속에서 커서와 페이징을 사용함에 고려해야할 트레이프 오프가 커넥션 타임 뿐인 걸까요?? 이런 상황에서도 커서가 메모리 할당 방식으로 인해서 메모리 사용량이 커진다는 단점이 있는 건가요?? ( 더 정확하게 말하자면 결과를 메모리에 할당한다는 점이 명확히 와닿지 않습니다. 제 나름 추론하자면, 커서가 fetch size나 chunk로 전체 데이터를 분할하여 메모리에 올리고 읽고나서도 모든 결과값이 메모리에 쌓여 한번에 write(ex- db에 저장) 되기 때문에 메모리 사용량이 많아 진다는 것인가여?? 반면에, 페이징은 기반 처리는 페이징 단위로 데이터를 읽고 읽은 데이터 크기를 처리 후 메모리에 올리고 write한 후에 다시 정해진 크기 만큼 읽는 방식인건가요?? 즉, 이것이 커넥션을 맺고 끊는 것 방식과 관련이 깊은 것인지 궁금합니다.) 이상 cs적인 지식이 부족한 비전공자의 긴 질문을 읽어주셔서 감사합니다.
8회 첫실기 합격했습니다. 비 전공자 직장인이라 걱정했는데 다행히 한방에 붙었네요 ㅠㅠ 3유형 오즈비 *5 문제를 틀린것 같네요. 캐글 문제는 여유가 없어서 거의 못풀어봤고 강의 쭉 보고 잘 안되는 3유형과 1유형 위주로 복습했습니다. 마지막에 정리해서 올려주신 2유형 같은 방법으로 풀기, 마인드맵이 많은 도움이 됐습니다. 감사합니다.