일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
Tags
- 운영체제
- useState
- 자료구조
- Zerobase
- 자바스크립트
- Python
- Computer Science
- python algorithm
- 개발공부
- 파이썬
- 비동기
- 프로그래머스
- 컴퓨터공학
- algorithm
- Operating System
- 파이썬 알고리즘 인터뷰
- codestates
- OS
- execution context
- node.js
- REACT
- typeScript
- JavaScript
- 코드스테이츠
- 알고리즘
- 자바
- context switching
- react 기초
- 글또
- java
Archives
- Today
- Total
Back to the Basics
[Programmers-python algorithm] - 1,2강 본문
Computer Science/Algorithm & Data Structure
[Programmers-python algorithm] - 1,2강
9Jaeng 2021. 7. 3. 16:06728x90
Data Structure and Algorithm
Algorithm 이란?
- 사전적 정의 : 어떤 문제를 해경하기 위한 절차, 방법, 명령어들의 집합
- programming : 주어진 문제를 해결하기 위한 자료구조와 연산 방법에 대한 선택.
- 자료구조를 배워야 하는 이유 : 문제를 파악하고 내가 사용한 자료구조가 어떤 성질이여야 하는지 알아야 하기 때문
Linear Array
1) Array와 List
- Arrya : 원소들을 순서대로 늘어놓는 것.
- List : data type이 다른 원소들 사용 가능.
2) Python List에 활용할 수 있는 연산들
- 실행시간이 list 길이에 독립적인 연산들 O(1)
- .append() : 맨 끝에 원소를 덧붙인다.
- .pop() : 맨 끝의 원소 하나를 꺼내고 꺼낸 것을 출력한다. (When index is out of range, it returns index Error)
- List의 길이와 실행시간이 비례한 연산들 O(n)
- insert(indes,element): 원소 삽입하기
- 삽입 할 위치인 index에 기존의 element들을 한 칸씩 땡기고 그 곳게 삽입하므로, 실행 시간기 list 길이와 비례한다.
- del(elememt)
- 원소 삭제 후 elements를 한 칸씩 당기고 마지막 element를 삭제한다.
- 추가 다른 연산
- index(element) -> index 출력
- Time complexity : O(n) --> 각 리스트의 원소들을 비교해야하기 때문.
- list.remove(index) , del list, list.pop()의 차이점
(1) list.remove : 첫 번째로 matching 되는 원소를 제거한다.
- list.remove(index) , del list, list.pop()의 차이점
myList=[1,2,3,2] myList.remove(2) myList #index가 2인 3이 삭제된다 결과 : [1,2,2]
(2) del myList[index]
myList=[1,2,3,2] del myList[2] myList #[1,2,2]
(3)list.pop(index)
myList=[4,3,5] myList.pop(1) #2 myList [4,5]
- insert(indes,element): 원소 삽입하기
- Practice 1
List 에서 특정 워가 있는 모든 index를 구하려 list로 반환하라.- index() 메서드를 사용하여 해당 value가 있는 index를 구하고, slice를 이용하여 처음 구한 index 제외한 list로 초기화한다.
- append() 메서드를 사용하여 출력 할 list의 끝에 추가한다.
구현한 코드는 아래의 링크에서 확인이 가능하다.
findindex.py
- Practice 2
크기에 따라 정령되어있는 list에 원소를 삽입하라.- 반복문을 사용하여 insert 메서드로 삽입한다.
- 조건문에서 value가 list 내의 원소들보다 클 경우 마지막에 삽입하는 조건을 먼저 넣어준다.
addNewelemTolist.py
728x90
'Computer Science > Algorithm & Data Structure' 카테고리의 다른 글
[자료구조/알고리즘]재귀 - JSON - Serialize & Deserialize (0) | 2021.09.10 |
---|---|
[Algorithm] - 제곱근 , 소수점 구하기 (0) | 2021.08.31 |
[Programmers-python algorithm] - 5강 (0) | 2021.07.04 |
[Programmers-python algorithm] - 4강 (0) | 2021.07.03 |
[Programmers-python algorithm] - 3강 (0) | 2021.07.03 |
Comments