스택이란?

한쪽 끝에서만 데이터를 삽입/삭제 할 수 있는 선형 자료구조

LIFO(Last In First Out)의 특징을 가졌다.





스택 오퍼레이션

isEmpty() : 스택이 현재 비어있는지 체크

push(data) : 스택에 데이터 삽입

pop() : 스택에서 데이터 삭제

peek() : 스택의 맨 위(다음에 꺼낼 데이터) 확인





스택 구조





스택 구현

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
31
32
33
34
35
36
37
38
import java.util.EmptyStackException;
 
public class Stack {
    
    private static class Node {
        private int data;
        private Node next;
        private Node(int data) {
            this.data = data;
        }
    }
    
    private Node top;
    
    public boolean isEmpty() {
        return top == null;
    }
    
    public int peek() {
        if(isEmpty()) throw new EmptyStackException();
 
        return top.data;
    }
    
    public void push(int data) {
        Node node = new Node(data);
        node.next = top;
        top = node;
    }
    
    public int pop() {
        if(isEmpty()) throw new EmptyStackException();
        
        int data = top.data;
        top = top.next;
        return data;
    }
}
cs





큐란?

한쪽에서는 데이터 삽입만, 반대쪽에서는 데이터삭제만 가능한 선형 자료구조

FIFO(First In First Out)의 특징을 가졌다.





큐 오퍼레이션

isEmpty() : 큐가 현재 비어있는지 체크

enqueue() : 큐에 데이터 삽입

dequeue() : 큐에서 데이터 삭제

peek() : 큐의 맨 앞(다음에 꺼낼 데이터) 확인





큐 구조









































큐 구현

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import java.util.EmptyStackException;
 
public class Queue {
    
    private static class Node{
        private int data;
        private Node next;
        private Node(int data) {
            this.data = data;
        }
    }
    
    private Node front;
    private Node rear;
    
    public boolean isEmpty() {
        return front == null;
    }
    
    public int peek() {
        return front.data;
    }
    
    public void enqueue(int data) {
        Node node = new Node(data);
        if(rear != null) {
            rear.next = node;
        }
        rear = node;
        if(front == null) {
            front = node;
        }
    }
    
    public int dequeue() {
        if(isEmpty()) throw new EmptyStackException();
        
        int data = front.data;
        front = front.next;
        if(front == null) {
            rear = null;
        }
        return data;
    }
}
cs


'자료구조' 카테고리의 다른 글

해시테이블이란? Hash Table 구현 Java  (0) 2019.10.27
링크드리스트(Linked List) 구현 Java  (0) 2019.10.26


1 신청기간

- 온라인 : 3.30 ~ 5/15 (선착순 아님)

- 주민센터내방은 4.16 ~ 5부제적용(신청인기준)

- 찾아가는 접수는 거동이 어려운 사람에 한해서 날짜를 지정해서 직원이 방문함



2. 지원대상

20.03.18 00시기준~ 신청일까지 서울에 거주하는 사람 중 중위 소득 100%이내 가구

- 4대보험 적용 근로자의 경우 원천징수로 조회되는 소득 기준

- 프리랜서는 3개월 급여명세서 또는 소득신고서 제출

- 백수 : 소득신고서 0원 신고


3. 지원불가대상

- 수급자/차상위계층 : 4월에 별도로 상품권 지급 예정

- 아동수당 받는 가구

- 2020년도 실업급여 수급자

- 청년수당수급자

가구원중에 한명이라도 위의 해당사항이 있는 경우는 지원 불가(기타관계인/동거인인 경우 상관없음)



4 지급방식

모바일 지역상품권(제로페이 가맹점에서만 6월말까지 사용가능)





FAQ


Q 실거주는 서울, 주민등록은 경기도인데 지원받을수 있나요?

A 서울에 실거주 하더라도 재난 긴급생활비 지원 대책 발표일(3월 18일) 기준

 주민등록지가 서울시로 되어있고, 신청일 기준으로도 주민등록지가 서울시로

 되어있어야 지원이 가능합니다.


Q. 본인이 지급대상인지 어떻게 확인하나요?

A. 기준 중위 소득표와 제외대상을 확인 후 본인이 지원대상에 해당되는지 각 가정에 배부되는 전단지 및 서울시와 자치구 홈페이지를 확인하여 자가진단을 해보고, 신청하실 때 120 다산콜센터와 동 주민센터에 추가상담을 받으시면 됩니다. 소득계산은 가구원 모두의 세전소득액을 합산하여야 합니다.



Q. 재난긴급생활비 지원은 근로자만 받을 수 있나요?

A. 근로 여부와 상관없이 중위소득 100% 이하에 해당하면 지원합니다



Q. 한주소 세대주 분리의 경우 각각 지원 가능한가요?

A. 한 주소지 내 세대주가 분리되어 있어도 각각의 가구로 인정하여 지원가능합니다



Q. 국민기초생활수급(생계, 의료, 주거, 교육급여) 대상자는 재난긴급생활비를 지원받지 못하나요?

A.국민기초생활수급자는 정부로부터 지원받는 정책이 있기 때문에 서울시 재난    긴급생활비와 중복하여 신청할 수 없습니다.



Q. 신청하고 타시도로 이사갈 경우 지원받을수 있나요?

A. 접수통지를 받은 때까지 주민등록상 현재 서울시 거주의 경우 지원이 가능합니다.    (단, 재난 긴급생활비 지원 대책 발표일(3월 18일) 기준부터 서울시 거주)


Q. 중위소득 100% 이하 가구는 어떻게 알 수 있나요?

A. 중위소득 100% 기준표는 다음과 같습니다.




Q. 어떤 서류가 필요한가요?

A. 서울복지포털(http://wiss.seoul.go.kr)에서 서울시 재난 긴급생활비 지원 신청서와 개인정보 제공동의서를 다운받아 작성해주시면 됩니다. ※ 단, 온라인 신청 시 개인정보제공동의서만 다운받아 작성하여 업로드해주시면 됩니다.) 다만, 보건복지부 사회보장통합정보시스템을 통해 조회된 소득과 실제 소득이 다른 경우에는 추가 서류를 요청드릴 수 있습니다. 



Q. 4대 보험료를 낸 적도 없고 짧은 기간동안 일하여 소득신고가 된 적이 없는 경우 지원받을 수 있나요?

A. 사회보장정보시스템 상 확인되는 소득이 없으며, 소득 기준에 적합할 경우, 지원 가능합니다.



Q. 서울사랑상품권, 선불카드 신청 후 변경이 가능한가요?

A. 서울사랑상품권 및 선불카드는 소상공인 지원 및 지역상권   활성화를 위해 한시적으로 발행된 카드로 신청 후 변경·잔액환급이 불가능합니다



Q. 가구원 전체에 대한 개인정보 동의가 왜 필요한가요?

A.가구원 전체의 소득을 조회하기 위해서는 가구원의 개인정보제공에 대한 동의가 필수이며, 가구원 중 한명이라도 개인정보제공 동의 거부 시 지원할 수 없습니다.



Q. 가구당 1명만 신청 가능한가요?
A. 가구 단위로 1명만 신청 가능하며,  세대주 및 세대원 중 누구나 신청할 수 있습니다. 대리인의 경우 신분증, 관련서류, 위임장을 지참하여 동주민센터를 방문하면 됩니다.



Q. 재난긴급생활비를 지원받고 나서 타 제도의 지원을 받게되면 어떻게 되나요?

A. 서울시 재난 긴급생활비는 코로나19로 인해 생계가 어려운 가구에 대해 지원하므로, 재난긴급생활비를 지원 받은 후 새로운 위기상황이 발생하는 경우 타 제도의 지원을 받을 수 있습니다.



Q. 서울사랑상품권(모바일)과 선불카드를 6월말까지 사용해야 하는 이유는 무엇인가요?

A. 현 코로나19 사태로 인해 저소득층 근로자, 영세 자영업자 등이 생계위기에 직면해 있을 뿐만 아니라 마트·편의점 아르바이트 등 불안정한 일자리의 노동자에 대한 고용 감소까지 이어지고 있어 상반기 내 조속한 집행을 통해 지역 상권을 활성화하기 위함입니다.



Q. 외국인 및 난민도 지원되나요?

A. 다음의 조건에 모두 해당하는 외국인인 경우 지원합니다.

1) 출입국관리법 제31조에 따라 외국인 등록을 한 사람 

2) 서울시에 주소지를 둔 사람 

3) 대한민국 국적을 가진 사람과 혼인 또는 직계존비속 관계에 있는 사람

1), 2) ,3) 모두 해당하여야 함




직장인이라면 누구나 매년 해야 하는 연말정산이란 무엇이고 근로소득세를 절감할 수 있는 방법을 알아보자.




1 연말정산이란?

근로자들이 올해 납부한 근로소득세를 정산하는 절차로서, 원천징수의무자(회사)는 다음 연도 2월 분의 급여를 지급할 때에 매월 급여 지급 시 이미 원천징수한 세액이 세법에 따라 정확하게 계산한 연간 근로소득세 보다 많은 경우 많이 낸 세금은 돌려주고, 적게 낸 경우에는 추가 징수하여 납부하는 절차

쉽게 말해 우리가 1년 동안 냈던 세금과 실제 내야 할 정확한 세금을 비교해서 이미 낸 금액이 더 많다면 차액을 돌려(환급)주고 그 반대라면 추가로 걷어가는(추징) 것이다.





2 원천징수란?

소득금액 또는 수익금액을 지급하는자(원천징수의무자)가, 그 지급을 받는 자(원천납세의무자)가 부담할 세액을 정부 대신 징수하는 방식

원천징수의무자는 회사라고 보면 되고 원천납세의무자는 직장인들이다. 근로소득세는 연간 과세표준금액에 구간별 세율을 곱하여 계산한다. 그런데 매달 월급을 받을 때마다 이를 정확하게 계산해서 내기는 어렵다. 그래서 회사에서 각자 연봉에 비례하게 일정액을 걷어서 세금을 대신 납부해준다. 이를 통해 국가는 세금이 누락되는 것을 방지하고, 세금 수입을 조기에 확보할 수 있다. 또한, 납세의무자 입장에서는 세금을 1년에 한번 크게 내는 것보다 매달 분할 납부함으로써 조세 부담이 줄어든다. 



3 연말정산을 하는 이유

월급에서 매달 원천징수하는 그 세금의 금액이 정확하지 않기 때문이다. 연봉계약서에 정해지지 않은 보너스를 받을 수도 있고, 중간에 이직/퇴직 등으로 급여가 변동 될 수 있다. 근로자가 1년동안 얼마를 벌지 모르니 연말에 1년간 벌고 쓴 금액에 맞추어 세금을 다시 계산한다. 그리고 원천징수에는 개인마다 다른 공제혜택이 적용되지 않았다. 그래서 연말에 한 해 소득을 정산한 후 공제할 부분은 공제 한 후 최종 세금을 계산하는 연말정산을 하는 것이다.





4 과세표준이란?

소득에 대한 세액을 산정하기 위한 기초 단위

같은 연봉을 받는 직장인이라도 같은 금액의 세금을 내는것은 아니다. 나라에서 세금을 부과하는 개인별 표준금액이 있다. 이것을 과세표준 이라고 한다. 연간근로소득은 말 그대로 내가 벌어 들인 총 금액이고 과세표준은 그 중에서 비과세소득과 각종 소득공제분을 제외한 후 세금납부의 대상이 되는 금액이다.



예를 들어 내 연봉이 4000만원인데 각종 소득공제와 비과세소득을 제외하고 과세표준 금액이 2500만원이라고 하자. 즉 4000만원이 아닌 2500만원에 세금을 매기는 것이다. 당연히 과세표준액이 적으면 적을 수록 내가 내는 세금이 줄어든다. 과세표준에 따른 산출세액 계산법은 아래 표를 기준으로 한다. 한가지 확인해야 할 점은 세율은 누진적용이라는 것이다. 1201만원을 버는 사람은 1200만원에 대한 15%의 세금을 내는것이 아니라 1200만원까지는 6%의 세금을 내고 초과한 1만원에 대해서만 15% 세율이 적용된다. 아래 간편법으로 계산하면 편하다.(사실 근데 이걸 내가 직접 계산할 일은 없다 직장인이라면 회사에서 다 해줌)




5 소득공제와 세액공제 차이?

 

돈을 벌러 직장에 다니기 위해서 식비/교통비/의류구입비 등 필수적으로 지출해야 하는 돈이 일정부분 존재한다. 돈을 벌기위해 쓴 돈은 소득이라고 보기 어렵다. 그리고 우리가 돈을 벌어서 쓰는 소비활동은 나라 경제가 활성화 되는데 도움이 된다. 그래서 연간근로소득 중 내가 소비한 금액의 일부분 만큼 과세대상에서 제외해준다. 이것을 소득공제라고 한다.


세액공제는 말그대로 내가 내야 할 세금을 줄여주는 것이다. 아래 그림을 참고하면 쉽다. 과세표준에 세율을 곱해 산출세액을 계산하여 나온 세금에 세액공제/감면분을 제외하면 최종적으로 계산된 세금(결정세액)이 나온다.







여기까지 읽었다면 어떻게 해야 세금을 적게 낼 수 있는지 대충 감이 올 것이다. 소득공제금액과 세액공제금액이 많으면 많을수록 좋다.


소득공제와 세액공제 항목들에는 어떤것들이 있고 혜택을 최대한 많이 받는 법에 대해서는 2편에서 자세히 설명하겠다.



+ Recent posts