#include
#include
#include
struct node
{
char sym;
float pro;
int arr[40];
int top;
}s[40];
typedef struct node node;
int main()
{
char *p,tchar,str[60],symbol[30]={""};
char find[]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n'
,'o','p','q','r','s','t','u','v','w','x','y','z'};
int flag,start,temp,*v,count[3],scount[30]={0},slen,i,len=0,numlen,j,fchar[30]={0},k,flen;
float *vf;
void shannon(int l,int h,node s[]);
clrscr();
numlen=strlen(find);
printf("enter string :");
scanf("%[^\n]",str);
len=strlen(str);
i=0;
while(i{
for(j=0;j {
if(str[i]==find[j])
{
fchar[j]++; //increment count for character
}
}
i++;
}
str[i]='\0';
i=0;
for(k=0;k{
if(fchar[k]!=0)
{
symbol[i]=find[k];
scount[i]=fchar[k];
i++;
}
}
slen=i;
for(i=0;i{
for(j=0;j {
if(scount[i]>scount[j])
{
//swap value
temp=scount[i];
scount[i]=scount[j];
scount[j]=temp;
//swap char
tchar=symbol[i];
symbol[i]=symbol[j];
symbol[j]=tchar;
}
}
}
printf("\nsymbol count\n");
for(j=0,i=slen-1;j{
printf("%c %d\n",symbol[j],scount[j]);
*(vf+j)=(float)scount[j]/100;
s[i].sym=symbol[j];
s[i].pro=*(vf+j);
}
for(i=0;is[i].top=-1;
shannon(0,slen-1,s);
//code bit logic
printf("---------------------------------------------------------------");
printf("\n\n\n\tSymbol\tProbability\tCode");
printf("---------------------------------------------------------------");
printf("\n\n\n\tSymbol\tProbability\tCode");
for(i=slen-1;i>=0;i--)
{
printf("\n\t%c\t%f\t",s[i].sym,s[i].pro);
for(j=0;j<=s[i].top;j++)
printf("%d",s[i].arr[j]);
}
printf("\n---------------------------------------------------------------");
getch();
return 0;
}
void shannon(int l,int h,node s[])
{
float pack1=0,pack2=0,diff1=0,diff2=0;
int i,d,k,j;
if((l+1)==h || l==h || l>h)
{
if(l==h || l>h)
return;
s[h].arr[++(s[h].top)]=0;
s[l].arr[++(s[l].top)]=1;
return;
}
else
{
for(i=l;i<=h-1;i++)
pack1=pack1+s[i].pro;
pack2=pack2+s[h].pro;
diff1=pack1-pack2;
if(diff1< 0)
diff1=diff1*-1;
j=2;
while(j!=h-l+1)
{
k=h-j;
pack1=pack2=0;
for(i=l;i<=k;i++)
pack1=pack1+s[i].pro;
for(i=h;i>k;i--)
pack2=pack2+s[i].pro;
diff2=pack1-pack2;
if(diff2< 0)
diff2=diff2*-1;
if(diff2>=diff1)
break;
diff1=diff2;
j++;
}
k++;
for(i=l;i<=k;i++)
s[i].arr[++(s[i].top)]=1;
for(i=k+1;i<=h;i++)
s[i].arr[++(s[i].top)]=0;
shannon(l,k,s);
shannon(k+1,h,s);
}
}
wt a mind yr..............
ReplyDelete
DeleteDiệp Âm Trúc vội vã lắc đầu nói:
- Đương nhiên không phải. Hương Loan học tỉ, ngươi đừng hại ta. Ngươi chính là công chúa của đế quốc, con gái duy nhất của Tây Nhĩ Duy Áo thúc thúc. Nếu mà ta mang ngươi đi, lại là đi chỗ tối nguy hiểm là Cực Bắc Hoang Nguyên. Tây Nhĩ Duy Áo thúc thúc biết được, có thể dễ dàng tha cho ta sao? Cho dù là Phí Tư Thiết Lạp ở đấy ta cũng không cách gì nói rõ được! Ngươi đừng làm khó ta nữa.
Hương Loan trợn mắt nhìn Diệp Âm Trúc mà không nói ra lời. Nàng không thể không thừa nhận, Diệp Âm Trúc nói không sai, là công chúa của đế quốc, nàng sớm đã không có dạng tự do của nữ hài bình thường, muốn trốn đi hoàn toàn không phải việc giản đơn như vậy. Vạn nhất để người ngoài biết, ấy là việc lớn làm mất quốc thể. Trừ phi là phụ thân phê chuẩn, nhưng, phụ hoàng sao có thể để mình đi đến thú nhân quốc nguy hiểm ấy? Nếu mà tđồng tâm
game mu
cho thuê nhà trọ
cho thuê phòng trọ
nhac san cuc manh
số điện thoại tư vấn pháp luật miễn phí
văn phòng luật
tổng đài tư vấn pháp luật
dịch vụ thành lập công ty
http://we-cooking.com/
chém gió
trung tâm tiếng anhự mình phát sinh vấn đề gì, lập tức sẽ thành con tin để thú nhân bắt chẹt Mễ Lan đế quốc.
Lúc này, Hải Dương ở bên cạnh mở miệng,
- Hương Loan tỉ, tỉ đừng làm khó Âm Trúc bọn họ. Tỉ xác thực không thích hợp để đi. Thân phận của tỉ rất
put this code in java _|_
ReplyDeleteput this code in matlab...............
ReplyDeleteCan u plz explain the shannon func???...will b a great hlp.. tia..
ReplyDeletephương pháp tu luyện của một loại công pháp tên là Đại tự tại Tu La
thuật. Công pháp đó xuất thân từ Tà Ma tông.
Ở Hỏa Đốt quốc, Tà Ma tông là một môn phái ma đạo. Bọn họ tu luyện một
loại công pháp khiến cho mọi người nghe thấy đều hoảng sợ đó là Đại tự
tại Tu La thuật. Công pháp này tổng cộng có sáu tầng. Người tu luyện
học kế toán tại hải phòng
trung tâm kế toán tại hoàng mai
học kế toán tại bắc giang
học kế toán tại thanh xuân
http://kylin1st.com
học kế toán thực hành
http://cattleyavn.com
học kế toán tại bắc ninh
dịch vụ báo cáo tài chính
kế toán cho giám đốc quản lý
trung tâm kế toán tại quảng ninh
học kế toán tại bắc ninh
học kế toán tại hà đông
công pháp đó chính là tu luyện Vô Tình Tu La đạo.
Tu công pháp này phải lấy giết chóc để luyện tâm. Lấy luyện tâm
nhập vào Vô Tình đạo. Đắm chìm trong Vô Tình đạo, luyện ra Tu La chi
hồn. Sau đó lấy cái hồn đó thay thế Nguyên Anh. Đến lúc đó Đại Tự tại Tu
La thuật đã chính thức thành công.
Khi tu luyện công pháp này, ở giai đoạn đầu yêu cầu rất nghiêm khắc, mỗi
ngày đều phải giết một người. Vương Lâm ngưng thần suy nghĩ, đoán rằng
hắc y trung niên chắc chắn là tu luyện Đại Tự tại Tu La thuật. Ngọc giản