C语言与算法
文章平均质量分 72
tyf122
热爱学习,认真刻苦
展开
-
应用数据库函数约束化简解决动物识别系统问题(产生式系统)
1.产生式系统介绍 总数据库 存放求解过程中各种当前信息的数据结构 产生式规则 规则库,存放与求解问题有关的某个领域知识的规则之集合及其交换规则 控制策略 推理机构,控制产生式系统的运行,决定问题求解过程的推理线路 2.动物识别系统属性选择 编号依次为(0~31) 毛发 产乳 羽毛原创 2011-10-30 14:25:27 · 1512 阅读 · 0 评论 -
二维数组名充当函数参数
正文: 首先,我引用了谭浩强先生编著的《C程序设计》上面的一节原文,它简要介绍了如何 将二维数组作为参数传递,原文如下(略有改变,请原谅): [原文开始] 可以用二维数组名作为实参或者形参,在被调用函数中对形参数组定义时可以可以指 定所有维数的大小,也可以省略第一维的大小说明,如: void Func(转载 2012-07-10 20:59:20 · 1347 阅读 · 0 评论 -
跳跃表数据结构
跳跃表 本文将总结一种数据结构:跳跃表。前半部分跳跃表性质和操作的介绍直接摘自《让算法的效率跳起来--浅谈“跳跃表”的相关操作及其应用》上海市华东师范大学第二附属中学 魏冉。之后将附上跳跃表的源代码,以及本人对其的了解。难免有错误之处,希望指正,共同进步。谢谢。 跳跃表(Skip List)是1987年才诞生的一种崭新的数据结构,它在进行查找、插入、删除等操作时的期望时间复杂度均为转载 2012-07-01 20:59:51 · 1845 阅读 · 0 评论 -
全排列问题
给定一组数,给出其全排列的算法 算法:递归 本质上可以用循环遍历代替,不过递归更加通用,且程序简单 源代码如下 #include #include //using namespace std; void Swap(int &a,int &b) { int temp=a; a=b; b=temp; } void Perm(int list[],int k,i原创 2012-08-26 17:10:47 · 816 阅读 · 0 评论 -
整数划分问题
将正整数n表示成一系列正整数之和 n=n1+n2+n3+n4+...... 正整数的划分个数即上面的等式的个数的形式 求解方法: 递归式的建立 q(n,m):表示最大加数不大于m的划分个数 故划分的个数为q(n,n),下面是递归式求解q(n,n) 递归式: 1)q(n,1)=1;显然的 2)q(n,m)=q(n,n),当m>=n时 3)q(n,n)=q(n,n-1)+1;原创 2012-08-26 17:28:21 · 711 阅读 · 0 评论 -
统计数字问题
问题描述:给定一个整数n,统计从1到n(数字最高位不允许为0)这么多个数中0,1,2,3,4,5,6,7,8,9分别出现的次数。 问题解决:采用递归求解统计每一个数字0,1,2,....,9出现的次数累加。 源代码: #include "stdafx.h" #include int results[10]; void count(int n) { while(n>0) {原创 2013-08-06 20:29:40 · 738 阅读 · 0 评论 -
字典序问题
问题描述: 字典编码,按照升序排列,且没有重复,a,1,b,2,.....z,26,ab,27,ac,28..................,az,51,bc,52,..... 编程要求:给一个字符串,计算其在该字典序中的编码。 程序源代码: // 字典序问题之2.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #includ原创 2013-08-07 10:38:46 · 713 阅读 · 0 评论 -
assert
assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #include void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息, 然后通过调用 abort 来终止程序运行。 请看下面的程序清单badptr.c: #i转载 2013-10-09 10:58:39 · 583 阅读 · 0 评论