반응형




iPhone 에서 작성된 글입니다.
반응형
반응형
ㅇㅅㅇ 이녀석

ㅡㅡ 항상 등만 보이는 늠




내방에. 하루밤을 같이 보낸 결과






결국 내방 대청소로 이어졌고.

새장은 거실로....

iPhone 에서 작성된 글입니다.
반응형
반응형





링크드 리스트 소스 구연했던 예제입니다. 


구연 다안되어 있지만.. 


참고 하실분은 참고 하세요.


list.h

#ifndef LIST_H

#define LIST_H
#include <node.h>
class List
{
public:
    List(){
        std::cout<<"list :1";
       _head=NULL;
    }

    List(Node *appendNode){
        std::cout<<"list :2";
    }

    Node *headNode() const;
    Node *appendNode(const std::string &text);
    Node *insertNode(const std::string &text, Node *beforeNode);
    Node *deleteNode(Node *node); //삭제

    void print();


private:
    Node *_head;
};


#endif // LIST_H


list.cpp


#include "list.h"
#include <iostream>



Node *List::appendNode(const std::string &text)
{

    Node *newNode = new Node(text);

    if (!_head) {
        std::cout<<"\nappendNode : _head=null";
        _head=newNode;
        _head->text();

    } else {
        std::cout << "_head : NULL 아님 ";
        Node *ptr =_head;
        while(ptr->next())
            ptr =ptr->next();
        ptr->_next=newNode;
        newNode->_prev=ptr;
    }
    return newNode;
}

Node *List::headNode() const{

    return _head;

}
void List::print(){

    for(Node *ptr=_head;ptr;ptr=ptr->next()){
        ptr->text();
    }

}

 Node *List::deleteNode(Node *node){
     Node *next = node->next();
     if(node->_prev)
     {
        node->_prev->_next=node->_next;

     }
     if(node->_next){
         node->_next->_prev=node->_prev;
     }
     if(!node->prev()){
         _head=next;
     }
     delete node;

     return next;

 }




node.h

#ifndef NODE_H
#define NODE_H
#include <iostream>
#include <string>


class Node
{
    friend class List;
private:

    Node(){
        this->setText("");
        std::cout<<"\nin?";
        this->text();
        _prev=0;
        _next=0;
    }

    Node(std::string str){
        _prev=0;
        _next=0;
        _str=str;
        std::cout<< "\n 기본생성자 아님"<< _str;
    }

public:

    std::string text() const;
    void setText(const std::string &text);

    Node *next() const;
    Node *prev() const;

private:

    Node *_prev;
    Node *_next;
    std::string _str;
};

#endif // NODE_H



node.cpp


#include "node.h"

void Node::setText(const std::string &text){

//    if(text==""){
//        std::cout<<"없음";
        _str=text;
//    }

}


std::string Node::text() const
{


    std::cout<< "\nNode str  :"<< _str<<"\n";
    return _str;


}




Node *Node::prev() const
{
    return this->_prev;
}


Node *Node::next() const
{
    return this->_next;
}







main.cpp


#include <iostream>
#include <list.h>
#include <node.h>

using namespace std;

int main()
{
    int select=0;
    std::string data="";

    List lt,lt2;

    while(true){

        cout << "================"<<"\n";
        cout << "1   노드 추가 \n";
        cout << "2   노드 보기 \n";
        cout << "3   노드 삽입 \n";
        cout << "4   노드 삭제 \n";
        cout << "5   다음 노드 \n";
        cout << "6   이전 노드 \n";
        cout << "================"<<"\n";
        cout << "?  ";
        cin >>select;

        cout << "\n";

        switch(select){

        case 1:{
            cout << " 추가할 노드의 이름 ?   ";
            cin >>data;
            cout <<"\n";

            lt.appendNode(data);
            break;
        }
        case 2:

            lt.print();
            break;

        case 3:
        {

            break;
        }

        case 4:{
            int _data;
            std::cout << "삭제할 노드 ?";
            std::cin >> _data;
            Node *node = lt.headNode();
            if(!node){
                std::cout<<"null ";
                break;
            }
            for(int i = 1; i<_data;i++)
            {

                node = node->next();
                if(!node){
                    std::cout<<"null ";
                    break;
                }
            }

            lt.deleteNode(node);
            break;
        }
        case 5:
            break;
        case 6:
            break;

        default:
            break;

        }



    }

    return 0;
}






반응형
반응형




퇴근길.


핫. 핫. 도그집이닷!!!!!


역안에 있어요!!!


정말 퇴근 길에 사먹은거라 맛이 꿀 같았어요.











@-@


오오오. 샀다.

itistory-photo-2





맛있어요 ..



ㅡㅡㅋ 맛있게 먹었다는 전설이

iPhone 에서 작성된 글입니다.


반응형
반응형

아이 패드 중고가.



음 적절한 값이네.

ㅇㅅㅇ.

그냥 검색해 봤어요.

iPhone 에서 작성된 글입니다.
반응형

'Life > ' 카테고리의 다른 글

디아 블로 오늘도 어김없이 튕겼다 ...  (0) 2012.06.09
퇴근길,노을. 이뻐서 찍었지만. ㅠㅠ 어둡게 나왔다는  (0) 2012.05.25
적절한 비유?  (0) 2012.05.16
가족이 생겼다는.  (0) 2012.05.14
구글 광고 -애드센스  (0) 2012.04.27
일본 지진 발생  (0) 2012.04.25
우와 구글 짤어  (0) 2012.04.24
일상  (0) 2012.04.23
반응형


밤엔 역시


치킨!!!!







ㅇㅅㅇ 우오. 몬가 케이스에 변화가.





개봉!!!!












늦은밤 배고프시다면. 치킨 고고싱

iPhone 에서 작성된 글입니다.
반응형
반응형

금일의 무료!!




물리퍼즐게임, 더미디펜스 Dummy Defense 무료 



받는곳

http://itunes.apple.com/kr/app/dummy-defense/id460832678?mt=8








반응형
반응형


음 나름 애드 센스를 붙여

그냥 치킨한마리  사먹을 소박한 꿈이 있었지만 ...

블러그 방문자가 없어  잘안모이네요 ..

투덜투덜...

왜 나만 나만~!



요즘

제 홈페이지 가끔들어오면 ... 

어여뿐 쇼핑몰 낭자님들이 ...

저를 맞이하여 주셔서 너무 기뻐요 ...

뭐 그렇타고요 ...


구글광고

지난달 수입현황 대!!! 공!!!! 개!!!!






반응형

'Life > ' 카테고리의 다른 글

퇴근길,노을. 이뻐서 찍었지만. ㅠㅠ 어둡게 나왔다는  (0) 2012.05.25
적절한 비유?  (0) 2012.05.16
가족이 생겼다는.  (0) 2012.05.14
아이패드 중고가  (1) 2012.05.02
일본 지진 발생  (0) 2012.04.25
우와 구글 짤어  (0) 2012.04.24
일상  (0) 2012.04.23
스타크래프트2 군단의 심장 트레일러  (0) 2012.04.22

+ Recent posts