游程编码
2011-07-26 17:17
246 查看
#include <queue> #include <iostream> using namespace std; int main() { cout << "请连续输入01序列,以#为结束:"; queue<int> qu; char a; do { cin >> a; if(a != '#') qu.push(a); }while(a != '#'); int size = qu.size(); int oralSize = qu.size(); //用于编码率分母 float pow = 0; a = qu.front(); qu.pop(); while(!qu.empty()) { if(qu.front()==a) { qu.pop(); } else { cout << size - qu.size(); size = qu.size(); a = qu.front(); qu.pop(); pow++; } } cout << endl; cout << "编码率:" << pow/oralSize << endl; cout << "结束" << endl; return 0; }
相关文章推荐