반응형

스택구조에 해당하는 글 1

반응형

[Leetcode] 155. Min Stack

Algorithm|2021. 8. 7. 17:16
반응형

Identifying the Problem

스택 생성하고, 스택을 다루는 함수를 만든다.

 

Sourcecode

typedef struct {
    int str[30000];
    int top; //stack의 끝 부분
    
} MinStack;

/** initialize your data structure here. */

MinStack* minStackCreate()  //stack obj 생성
{
    
    MinStack *stack;
    stack = (MinStack*)malloc(sizeof(MinStack));
    stack->top=-1;
    
    return stack;
}


void minStackPush(MinStack* obj, int val) //stack에 요소 넣기
{
    (obj->top)++;
    obj->str[obj->top] = val;
    
}

void minStackPop(MinStack* obj) //꼭대기 요소 제거
{
    obj->str[obj->top] = NULL;
    (obj->top)--;
}

int minStackTop(MinStack* obj) //꼭대기 요소값 리턴 
{ 
    return obj->str[obj->top];
}

int minStackGetMin(MinStack* obj) // stack 내의 가장 작은 값 리턴
{
    int min = obj->str[0];
    
    for(int i=1;i<=obj->top;i++)
        if(obj->str[i] < min) min = obj->str[i];
        
    return min;
}

void minStackFree(MinStack* obj) { //obj의 동적할당 해제
    free(obj);    
}
반응형

'Algorithm' 카테고리의 다른 글

[Leetcode] 169. Majority Element  (0) 2021.08.07
[Leetcode] 168. Excel Sheet Column Title  (0) 2021.08.07
[Leetcode] 141. Linked List Cycle  (0) 2021.08.07
[Leetcode] 136. Single Number  (0) 2021.08.07
[Leetcode] 125. Valid Palindrome  (0) 2021.08.07

댓글()