随笔 - 41, 文章 - 8, 评论 - 8, 引用 - 0
数据加载中……

[导入][C++]用位(bit)进行排序

以下算法看自《编程珠玑》,由于没看过算法书,觉得这个很有意思。

具体可以参考第一章。

在对数字进行排序时,使用这样的方法:

如{1,2,3,5,8},可以用位(bit)来表示:

0 1 1 1 0 1 0 0 1

所以,如果数据没有重复,并且很大时,就可以使用这个方法。

但现在还不知道如何用位,就用字节了,我采取bool实现:

#include<iostream>
using namespace std;

int main()
{
    const int size=50;
    const int size2=10;
    int seq[size2]={9,2,1,3,6,12,49,20,4,19};
    bool my[size]={0};
    for(int i=0;i<size2;++i){
        my[seq[i]]=1;
    }
    for(int j=0;j<size;++j){
        if(my[j]==1)
            cout<<j<<endl;
    }

}

阅读全文
类别:c++ 查看评论
文章来源:http://hi.baidu.com/mirguest/blog/item/97f1ea7d69af4a1b28388ada.html

posted on 2011-02-02 12:01 mirguest 阅读(222) 评论(0)  编辑 收藏 引用 所属分类: C++


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理