반응형

 

* 선형 검색(순차검색)이란?

   배열 검색 중 가장 기본적인 알고리즘으로 요소가 직선 모양으로 늘어선 배열에서 원하는 키값을 찾을 때까지

   맨 앞부터 순서대로 요소를 검색하는 것

 

0번째 1번째 2번째 3번째 4번째 5번째 6번째
6 4 3 2 1 3 8

 

위의 표와 같이 배열이 존재할 경우 1을 찾기 위해 0, 1, 2, 3번째 배열을 모두 검색하는 방법이다.

 

선형검색을 하게되면 종료의 조건은 아래 두가지로 정의 할 수 있다.

   1) 검색값을 찾은 경우

   2) 검색값이 존재하지 않는 경우

 

이때 종료 판단 횟수를 줄이는 역할을 하게 되는 것이 보초법 이다.

 

* 보초란?

   검색하고자 하는 키 값을 맨 끝 요소에 저장하는 값이다. 

   일반배열에서 7이라는 값을 찾으려고 할때 아래와 같이 배열이 구성 된다.

 

    - 보초 넣은 배열

0번째 1번째 2번째 3번째 4번째 5번째 6번째 보초
6 4 3 2 1 3 8 7

 

따라서 보초는 반복문에서 종료 판단 중 2)검색값이 존재하지 않는 경우를 체크하지 않아도 되게 함으로써 종료 판단을 2회에서 1회로 줄이는 역할을 한다.

 

아래는 보초법를 사용한 알고리즘 책의 p106 실습 3-3 예제입니다!

package chap03;

import java.util.Scanner;

public class SeqSearchSen {
    static int seqSearchSen(int[] a, int n, int key){
        int i=0;

        a[n] = key; //보초를 추가

        while (true) {
            if (a[i] == key) // 검색성공!
                break;
            i++;
        }
        return i == n ? -1 : i;
    }


    public static void main(String[] args) {
        Scanner stdIn = new Scanner(System.in);

        System.out.print("요솟수 : ");
        int num = stdIn.nextInt();
        int[] x = new int[num +1]; //요솟수 num+1인 이유는 보초값을 추가하기 위함

        for(int i=0;i<num; i++){
            System.out.print("x["+i+"] : ");
            x[i]= stdIn.nextInt();
        }

        System.out.print("검색할 값 : ");
        int ky = stdIn.nextInt();

        int idx = seqSearchSen(x, num, ky); //배열 x에서 값이 ky인 요소를 검색

        if(idx == -1){
            System.out.println("그 값의 요소가 없습니다.");
        }else{
            System.out.println(ky+"은(는) x["+idx+"]에 있습니다.");
        }
    }
}

 

 

* 보충수업 3-1 무한루프

   do while문은 끝까지 읽어야만 무한 루프인지 알기 때문에 권장하지 않는다!

 

 

반응형
반응형

 

기획에서 모바일 웹에서 창을 닫아달라는 요청이 있었다.

 

이 로직을 태우면서 발견한 여러가지 문제점을 적어두려고 한다.

 

1. 개발한 링크를 문자에서 바로 누르고 들어갈 경우

    1-1. 싱글페이지일 경우

          이때는 닫기가 잘 된다

    1-2. 싱글페이지가 아닐 경우

          첫 화면의 창 닫기 로직을 태우면 잘 되지만, 화면 이동을 했을 경우부터는 동작을 하지 않는다.

 

2. 문자에서 받았지만 직접 url을 입력하여 웹을 동작시켰을 경우

    2-1. 모든 경우

          안드로이드에서는 blank 화면으로 꺼질 수는 있으나 ios에서는 동작하지 못함

 

아래의 로직을 태웠을때 잘 동작할 경우와 동작 하지 않을 경우에 대한 컨트롤이 어렵기 때문에

결국 해당 기능은 제거하기로 결론이 났다.

 

  const _ua = window.navigator.userAgent || window.navigator.vendor || window.opera
  const type = checkMobile();

  if (type == 'kakaotalk') { 
  	//kakaotalk
    window.location.href = (/iPad|iPhone|iPod/.test(_ua)) ? 'kakaoweb://closeBrowser': 'kakaotalk://inappbrowser/close';
  }else if(type == 'ios'){ 
  	//ios
    window.open('', '_self', '')
    window.close();
  }else {
    window.open('about:blank','_self').self.close();
  }





// 브라우저 구별 function 참고 하기 위해 적어둠
// 기기구분
function checkMobile(){
	var ua = navigator.userAgent.toLowerCase(); 
    if ( ua.indexOf('kakaotalk') > -1) {
        //카카오톡
        return "kakaotalk";
    } else if ( ua.indexOf('android') > -1) {
        //안드로이드
        return "android";
    } else if ( ua.indexOf("iphone") > -1||ua.indexOf("ipad") > -1||ua.indexOf("ipod") > -1 ) {
        //ios
        return "ios";
    } else {
        //ios, 안드로이드 외
        return "other";
    }
}

 

 

 

반응형
반응형

 

vus.js 로 개발하면서 웹 화면 개발 중 브라우저별  처리가 달라져야하는 부분이 생길 수 있다.

 

ios, android일 때와 카카오톡에서 링크를 눌렀을 경우 각 브라우저를 return 하는 펑션 내용이다.

 

    var ua = navigator.userAgent.toLowerCase(); //userAgent 값 얻기
    if ( ua.indexOf('kakaotalk') > -1) {
        //카카오톡
        return "kakaotalk";
    } else if ( ua.indexOf('android') > -1) {
        //안드로이드
        return "android";
    } else if ( ua.indexOf("iphone") > -1||ua.indexOf("ipad") > -1||ua.indexOf("ipod") > -1 ) {
        //ios
        return "ios";
    } else {
        //ios, 안드로이드 외
        return "other";
    }

 

 

 

반응형
반응형

안녕하세요 Jin's입니다 

오늘은 좀 특별한 주제로 글을 남겨보려고 해요!

 

제가 대학생이 되고 봉사를 하고 싶은데 어디서 하면 뜻깊을까 고민하다가 일 년 정도 보육원에서 주말 하루 동안

아이들과 놀아주는 봉사를 한 적이 있었어요. 이때 일주일에 한 번 보는 거지만 아이들과 점점 친해지고 재미있게 놀던 어느 날 아이들이 제 기억엔 초등학교 1학년쯤이었는데 아이들이 나이가 차서 다른 보육원으로 가야 한다고 하더라구요. 그때부터 보육원의 아이들이 커서 사회에 나가게 되었을 때 어떠한 마음이고 사회에 나갈 준비는 되어일까 생각했던 기억이 있었습니다.

 

 

그래서 작은 돈이지만 초록우산 어린이재단에 매달 후원을 하다가 직접 아이에게 도움이 될 수는 없을 가라는 생각이 들어서 찾던 도중 디딤씨앗 통장을 알게 되었어요.

 

사실 정보가 너무 적다고 해야 하나 사이트도 안전성 없다고 뜨고..ㅋㅋㅋ 정말 맞는 건가 의심을 했지만 제가 낸 금액을 정부에서 같이 적금을 해준다고 해서 아이에게 진짜 도움이 되겠다 싶었어요.

 

그래서 큰맘 먹고 디딤씨앗 통장을 신청했답니다.

 

정기후원-후원신청

 

www.adongcda.or.kr

 

직접 후원신청서를 출력하고 메일 또는 문자를 보내면 되는데 저는 문자로 보냈었는데 연락이 일주일 넘어도 안 오길래 제가 전화해서 신청서 확인해달라고 요청했더니 그다음부턴 진행이 빨랐었어요.

 

블로그를 보다 보니까 본인이 후원하기 원하는 아이에 대해서 의견을 전달할 수도 있더라고요.

어떤 분들은 아이의 성별이 여자였으면 좋겠다고 전달하신 분도 있다는 블로그 글을 보고 저는 보육원에서 봉사했던 기억이 있어 혹시 가능하다면 보육원에서 생활하는 아이를 후원하고 싶다고 요청드렸었어요.

 

마지막으로 신청이 완료되면 어떠한 아이를 후원하게 되었다고 알려주는 문자가 오게 됩니다.

 

더 자세한 정보는 아래 홈페이지를 참고하시면 될 거 같아요!

 

디딤씨앗

 

www.adongcda.or.kr

 

혹시 아이들 후원 방법을 찾는 분들이 계시다면 도움이 되는 글이 되었으면 좋겠습니다.

반응형
반응형

 

 

안녕하세요 Jin's 입니다.

 

날이 점점 더워지면서 계속 생각나는 냉면!

연수동에 진짜 유명한 연수왕냉면을 다녀왔습니다ㅎㅎ

저는 1시쯤 도착했는데 1시에도 줄이 좀 있더라구요 점심시간에 가시는 분들은 참고하세요~

냉면

저는 2명이서 가서 물냉면, 비빔냉면, 만두를 시켜서 나눠먹었습니다.

만두는 마트에서 파는 일반 감자만두 맛과 같았구요

만두

 

냉면은 열무냉면이 아닌데? 열무가 들어간 것도 독특하고,

일반적으로 생각하는 익은 열무(?)가 아니더라구요

물냉면

 

그리고 가장 중요한 메뉴판!! ㅎㅎ

양이 많은편인데 굉장히 저렴합니다

사리도 무료이구요👍👍

메뉴판

연수동에 사시는 분들은 지나가다가 여름에 한번씩 가성비 식당으로 들리지시 않을까 싶습니다ㅎㅎ

비빔냉면

 

 

위치는 아래 지도 참고하세요!ㅎㅎ

 

 

반응형
반응형



관악산 연주대 정상


⛰ 관악산
관악산은 632.2m로 저처럼 등린이🐣에겐 약간 난이도가 있는 산이였어요
저는 정상까지 올라가는데 3시간 30분 정도 걸렸습니다.
연주대까지 1시간 30분정도 걸렸고, 내려오면서 계곡에 발도 담가보고
중간중간 쉬면서 내려와서 조금 더 걸린 거 같아요 ㅎㅎ

 


관악산과 청계산은 매우 가깝다는걸 이 표지판 보고 알게 되었습니다😂
다음엔 청계산도 도전해봐야겠어요👍

 

관악산 입구

 

관악산 종합안내도


저는 제 1등산로 코스로 등산하였습니다!

 

 

관악산 입구쪽에 아이들이 놀 수 있는 얕은 계곡이 있어 6월인 지금부터 아이들이 놀러 나와 있었어요!

 

약수터

 

올라가는 길에 중간중간 다리도 있고, 약수터도 있고, 계곡을 끼고 정상을 향해 가는거라 너무 좋았습니다.

 

연주암

 

연주암이 보인다면 정상까지 약 30분정도 남았다고 생각하셔도 돼요!
연주대를 갔다가 연주암으로 다시 내려와서 휴식하는 분들도 많고, 라면과 김밥을 먹는 분들도 많더라고요ㅎㅎ
정상엔 정말 그늘이 단 하나도 없었기 때문일 수도 있습니다🤣

 

연주대

 

연주암을 지나 조금 걸어가다보면 연주대가 보입니다.

 

 

관악산 연주대 정상

 

오르고 올라 드디어 정상입니다!

껄떡고개때는 그렇게 진짜 넘어갈 것 처럼 힘들었는데 정상오니 마냥 뿌듯하기만 하네요😆

 

 

정상을 찍고 내려가는길에 보이는 연주암에서 써놓은 글이 정말 감동적이였어요.

내려가면서는 차가운 계곡물에 발을 정말 오랜만에 담가보았습니다!

꼭 저처럼 해보세요 피로가 싹 내려갑니다👍

 

땅이네

 

땅이네 가격표

 

열무국수

 

감자전

 

마지막으로 사실 등산은 내려와서 더 열심히 먹으려고 가는거죠?!

저는 입구 근처의 땅이네에서 열무국수와 나물비빔밥, 감자전을 먹었습니다.

총 26000원이 나왔고 음식들이 너무 맛있었어요 ㅎㅎ

 

 

드디어 100대 명산 중 하나인 관악산을 등산을 해보았습니다!

앞으로 더 많은 산들 리뷰 남기도록할게요~!

 

 

반응형
반응형

 

cookie 등록, 수정, 삭제 로직입니다.

수정은 setCookie를 다시 호출하면 됩니다.

저는 vue.js 에서 사용하였습니다.

 

// 쿠키 셋팅
function setCookie(id, value) {
    document.cookie = id+'='+value;
}

// 저장된 쿠키값 가져오기
function getCookie(id) {
    var value = document.cookie.match('(^|;) ?' + id + '=([^;]*)(;|$)');
    return value? unescape(value[2]) : null;
}

// 저장된 쿠키값 삭제
function deleteCookie(id) {
    document.cookie = id + '=;';
}

 

참고 블로그 : https://sncap.tistory.com/962

 

 

 

반응형
반응형

 

연경정


⛰ 연경산
연경산은 175.86m로 저처럼 등린이🐣도 쉽게 오를 수 있는 산입니다.

정상에 올라가면 연경성이라는 정자가 있어 앉아서 멍 때리며 쉬기도 아주 좋습니다!👍

 

연경정


🏃🏻 코스
문학레포츠 공원의 어린이 놀이터 우측으로 가게 되면연경정까지 30분 이내로 오르실 수 있습니다.

연경산 등산 코스


올라가는 길에 약수터도 있고, 중간중간 쉴 수 있는 벤치🪑가 잘 되어있어서 등산에 익숙하지 않으신 분들이 천천히 올라가기 좋은 산인 것 같습니다.
그리고 연경산으로는 부족하다고 느끼시는 분들은 노적봉이나 문학산으로 등산을 이어서 하실 수도 있어요😆

 

* 문학산에 대한 기록은 아래 링크를 참고해주세요!

 

[ 뚜벅뚜벅등산 ] 문학산

⛰ 문학산 문학산은 '학이 날개를 펴고 앉은 것 같다'라고 해서 이름이 붙여졌데요! 기존에 군사보호구역으로 지정되어서 일반인 출입이 되지 않았는데, 출입허가와 개방시간을 10시까지 확대하

jin-ing.tistory.com

 

 

반응형

+ Recent posts