首页 > 代码库 > The operation on charactor string to compress the same alphabets
The operation on charactor string to compress the same alphabets
Objective
input abacacdekb , output 3a 2b 2c 1d 1e 1k
Procesure
#include<stdio.h> #include<stdlib.h> char a[]={'a','b','a','c','a','c','d','e','k','b'}; typedef char key_type; typedef struct node{ key_type key; struct node *next; int count; }node, *pnode; void insert(pnode *root, key_type key) { pnode p = (pnode)malloc(sizeof(node)); p->key = key; p->next = NULL; p->count = 1; if( (*root) == NULL) { ( *root ) = p; return ; } insert(&(*root)->next,key); } int find(pnode root, key_type key) { if( root ==NULL ) return 0; while( root && key != root->key) { root =root->next; } if( root == NULL) return 0; if( key == root->key) { (root->count) = (root->count)+1; return 1 ; } } void read(pnode *root ) { pnode temp =(*root); while(temp) { printf("%d%c ",temp->count,temp->key); temp = temp->next; } } void main() { int i; pnode root = NULL ; for(i=0;i<10;i++) { if( find( root , a[i] ) == 0 ) insert(&root,a[i]); else continue; } read(&root); }
The operation on charactor string to compress the same alphabets
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。