资源简介
Win32控制台应用,实现Apriori算法,查找频繁子集
代码片段和文件信息
// Apriori.cpp : Defines the entry point for the console application.
//
#include “stdafx.h“
#include “stdio.h“
int count[5];
int countL2[10];
char cur[50][3];
int countL3[10];
char curL[10][4];
int n;
//得到所有1元的字串和各自出现的次数
void LoadItemL1(char **p)
{
int ij;
for(i=0;i<5;i++)
count[i]=0;
for(i=0;i<10;i++)
{
for(j=0;j<4;j++)
{
switch(*(*(p+i)+j))
{
case ‘1‘:
count[0]++;
break;
case ‘2‘:
count[1]++;
break;
case ‘3‘:
count[2]++;
break;
case ‘4‘:
count[3]++;
break;
case ‘5‘:
count[4]++;
break;
default:
break;
}
}
}
printf(“L1: \n“);
printf(“项集 支持度\n“);
for(i=0;i<5;i++)
printf(“I%d: %d \n“i+1count[i]);
printf(“------------------------------------\n“);
}
//比较两个字符串,如果相等返回true否则返回false
bool OpD(char* xchar* y)
{
int l=0;
if(*(x+l)!=0 && *(y+l)!=0)
{
while(*(x+l)==*(y+l))
{
++l;
if(*(x+l)==0 && *(y+l)==0)
return true;
}
}
return false;
}
//得到所有的2元子串
void SubItem2(char **p)
{
char *s;
int ijm;
n=0;
for(int k=0;k<50;k++)
{
*(cur[k]+0)=0;
*(cur[k]+1)=0;
*(cur[k]+2)=0;
}
for(i=0;i<10;i++)
{
s=*(p+i);
j=0;
m=0;
while(*(s+m+1)!=0)
{
*(cur[n]+0)=*(s+m);
j++;
*(cur[n]+1)=*(s+m+j);
*(cur[n]+2)=0;
// printf(“%s \n“cur[n]);
n++;
if(*(s+m+j+1)==0)
{
m++;
j=0;
}
}
}
}
//得到各个2元子串出现的次数
void LoadItemL2(char **p)
{
int ij;
for(i=0;i<10;i++)
countL2[i]=0;
SubItem2(p);
for(j=0;j<50;j++)
{
if(OpD(cur[j]“12“))
{
countL2[0]++;
continue;
}
else if(OpD(cur[j]“13“))
{
countL2[1]++;
continue;
}
else if(OpD(cur[j]“14“))
{
countL2[2]++;
continue;
}
else if(OpD(cur[j]“15“))
{
countL2[3]++;
continue;
}
else if(OpD(cur[j]“23“))
{
countL2[4]++;
continue;
}
else if(OpD(cur[j]“24“))
{
countL2[5]++;
continue;
}
else if(OpD(cur[j]“25“))
{
countL2[6]++;
continue;
}
else if(OpD(cur[j]“34“))
{
countL2[7]++;
continue;
}
else if(OpD(cur[j]“35“))
{
countL2[8]++;
continue;
}
else if(OpD(cur[j]“45“))
{
countL2[9]++;
continue;
}
}
printf(“%s\n““L2:“);
printf(“项集 支持度\n“);
if(countL2[0]>=2)
{
printf(“{I1I2}: %d\n“countL2[0]);
}
if(countL2[1]>=2)
printf(“{I1I3}: %d\n“countL2[1]);
if(countL2[2]>=2)
printf(“{I1I4}: %d\n“countL2[2]);
if(countL2[3]>=2)
printf(“{I1I5}: %d\n“countL2[3]);
if(countL2[4]>=2)
printf(“{I2I3}: %d\n“countL2[4]);
if(countL2[5]>=2)
printf(“{I2I4}: %d\n“countL2[5]);
if(countL2[6]>=2)
printf(“{I2I5}: %d\n“countL2[6]);
if(countL2[7]>=2)
printf(“{I3I4}: %d\n“countL2[7]);
if(countL2[8]>=2)
printf(“{I3I5}: %d\n“countL2[8]);
if(countL2[9]>=2)
printf(“{I4I5}: %d\n“countL2[9]);
p
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 769 2008-11-24 14:52 Apriori\StdAfx.h
文件 294 2008-11-24 14:52 Apriori\StdAfx.cpp
文件 1214 2008-11-24 14:52 Apriori\ReadMe.txt
文件 248 2004-12-01 15:21 Apriori\Apriori.plg
文件 4552 2008-11-24 15:46 Apriori\Apriori.dsp
文件 537 2008-11-24 15:46 Apriori\Apriori.dsw
文件 50176 2004-12-01 15:22 Apriori\Apriori.ncb
文件 5299 2008-11-28 12:07 Apriori\Apriori.cpp
文件 48640 2008-11-28 12:07 Apriori\Apriori.opt
文件 31232 2008-11-23 16:50 Apriori\数据挖掘实验一.doc
文件 0 2008-12-01 11:14 Apriori\~VC6.tmp
文件 32768 2008-12-01 11:14 Apriori\~VC5.tmp
文件 53760 2004-12-01 15:22 Apriori\~VCD7.tmp
文件 41984 2004-12-01 15:21 Apriori\Debug\vc60.idb
文件 203728 2008-11-24 15:05 Apriori\Debug\Apriori.pch
文件 61440 2008-11-28 12:07 Apriori\Debug\vc60.pdb
文件 4003 2008-11-24 15:05 Apriori\Debug\StdAfx.sbr
文件 1825 2008-11-24 15:05 Apriori\Debug\StdAfx.obj
文件 2520 2008-11-28 12:07 Apriori\Debug\Apriori.sbr
文件 66560 2008-11-27 18:17 Apriori\Debug\Apriori.bsc
文件 176215 2008-11-28 12:07 Apriori\Debug\Apriori.exe
文件 443392 2008-11-28 12:07 Apriori\Debug\Apriori.pdb
文件 515208 2008-11-28 12:07 Apriori\Debug\Apriori.ilk
文件 19949 2008-11-28 12:07 Apriori\Debug\Apriori.obj
目录 0 2008-12-01 19:12 Apriori\Debug
目录 0 2008-12-01 19:11 Apriori
----------- --------- ---------- ----- ----
1766313 26
- 上一篇:图的深度优先遍历C语言数据结构
- 下一篇:表达式求值求后缀c语言
相关资源
- Visual C++ 2013 从入门到精通源代码
- MFC编写的五子棋程序源代码
- C++电梯调度系统源代码
- 基于QT的用C++编写的中国象棋软件源代
- IP地址修改器源码
- SHA-1算法实现源代码
- Bezier曲线MFC实现源代码
- Htran1.0 源代码
- 队列的基本操作 医务室模拟 源代码
- 《C语言接口与实现》书中源代码
- mpeg4解码源代码
- 背包问题之贪婪算法求解C语言源代码
- C++ 课程设计 扫雷系统 报告+源代码
- 生成指定长度的Wav空白文件--
- 滴水逆向 文件操作pe修改C语言源代码
- visual c++ 6.0 完整扫雷源代码
- 程序员实用算法源代码
- 用C++语言写的完整的人脸识别程序源
- 北理乐学 C语言 编程题源代码
- c++实现的录音程序源代码(录mp3、x
- C++五子棋源代码程序解析
- 操作系统课程设计之进程调度源代码
- C++病毒开发开发源代码+2小时教学视频
- C++实现开心消消乐游戏源代码+教学视
- C++实现塔防游戏源代码
- 超市管理系统(MFC编写
- 校园导航源代码
- 端口扫描程序设计详细的报告+源代码
- 奇异值分解SVD算法c语言源代码
- C++ 生成JPEG图片源代码
评论
共有 条评论