메뉴 바로가기

서브메뉴 바로가기

본문 바로가기

logo

C/C++/MFC

C기초 Linear Search (선형 탐색)

2008.03.13 09:48

WhiteAT 조회 수:9923


 #include "stdafx.h"

#include<iostream>
#include<iomanip>

using namespace std;

class CWATLinearSearch
{
    private:
    int *x;
    int items;
    public:
    CWATLinearSearch(int);
    ~CWATLinearSearch();
    void input(int []);
    int search(int);
};

CWATLinearSearch::CWATLinearSearch(int n)
{
    items=n;
    x=new int[items];
}

CWATLinearSearch::~CWATLinearSearch()
{
    delete [] x;
}

void CWATLinearSearch::input(int a[])
{
    for(int i=0;i<items;i++)
        x[i]=a[i];
}

int CWATLinearSearch::search(int number)
{
    for(int i=0;i<items;i++)
    {
        if(number==x[i])
            return i+1;
    }

    return 0;
}

void main()
{
    int a[100]={1,2,3,4,7,9,44,33,22,55,77,88,};
    int n=12;
    int temp;

    cout<<"\n Enter search number :";
    cin>>temp;
    CWATLinearSearch obj(n);
    obj.input(a);
    int position=obj.search(temp);
    if(position!=0)
        cout<<"\n Search number is present and its position:"<<position;
    else
        cout<<"\n search number is not present";
    cout<<"\r\n";
}

결과
 Enter search number :33

 Search number is present and its position:8
Press any key to continue