
C语言与算法
文章平均质量分 72
tyf122
热爱学习,认真刻苦
展开
-
应用数据库函数约束化简解决动物识别系统问题(产生式系统)
1.产生式系统介绍总数据库 存放求解过程中各种当前信息的数据结构产生式规则 规则库,存放与求解问题有关的某个领域知识的规则之集合及其交换规则控制策略 推理机构,控制产生式系统的运行,决定问题求解过程的推理线路 2.动物识别系统属性选择 编号依次为(0~31) 毛发 产乳 羽毛原创 2011-10-30 14:25:27 · 1546 阅读 · 0 评论 -
二维数组名充当函数参数
正文: 首先,我引用了谭浩强先生编著的《C程序设计》上面的一节原文,它简要介绍了如何 将二维数组作为参数传递,原文如下(略有改变,请原谅): [原文开始] 可以用二维数组名作为实参或者形参,在被调用函数中对形参数组定义时可以可以指 定所有维数的大小,也可以省略第一维的大小说明,如: void Func(转载 2012-07-10 20:59:20 · 1392 阅读 · 0 评论 -
跳跃表数据结构
跳跃表本文将总结一种数据结构:跳跃表。前半部分跳跃表性质和操作的介绍直接摘自《让算法的效率跳起来--浅谈“跳跃表”的相关操作及其应用》上海市华东师范大学第二附属中学 魏冉。之后将附上跳跃表的源代码,以及本人对其的了解。难免有错误之处,希望指正,共同进步。谢谢。 跳跃表(Skip List)是1987年才诞生的一种崭新的数据结构,它在进行查找、插入、删除等操作时的期望时间复杂度均为转载 2012-07-01 20:59:51 · 1905 阅读 · 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 · 841 阅读 · 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 · 733 阅读 · 0 评论 -
统计数字问题
问题描述:给定一个整数n,统计从1到n(数字最高位不允许为0)这么多个数中0,1,2,3,4,5,6,7,8,9分别出现的次数。问题解决:采用递归求解统计每一个数字0,1,2,....,9出现的次数累加。源代码:#include "stdafx.h"#includeint results[10];void count(int n){ while(n>0) {原创 2013-08-06 20:29:40 · 801 阅读 · 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 · 739 阅读 · 0 评论 -
assert
assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include void assert( int expression );assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。请看下面的程序清单badptr.c:#i转载 2013-10-09 10:58:39 · 617 阅读 · 0 评论