分类目录归档:C/C++数据结构

这是一门高深的知识,本版依然只接受具有技术性的文章。

C语言高手请进
HOT

建一个定长记录文件,包含30条记录,每条记录不超过300字节,使每次存储在记录里的数据都是最新怎么覆盖他  记录30条后  第31条覆盖以前的第1条。。。怎么覆盖。。。我用的是指针可是感觉太麻烦了写指针正向起点处30次。。。感觉太麻烦了有没有高手说说,有没有简单的办法,最好说详细点,我刚入门不久。。。而且比较笨,希望高手能指点的详细点有人说循环判断。。也没说怎么做
阅读全文

用递归的方法画分形图
HOT

用递归的方法画分形图作者:苍竹先生下载源代码  分形几何是数学领域里新兴的课题,如果将图形的每个元素按某种规则进行变形,得到新的图形,以此类推,进行若干次变形后得到的图形就是分形图形。Couch曲线是最典型的分形图形:   将一条线段按照图1进行变换,得到图1,再将图1中的每条线段按图1的折线变换得到图2,以此类推,进行6次变换就得到图6,如果进行无限次变换,就得到的是Couch曲线,Couch曲...
阅读全文

用C语言解决鬼谷算题
HOT

在鬼谷算题中有这样一个著名的题目:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?”这属于高等数学中的数论。我国宋代学者对这类题目钻研已颇为精深,总结出了“三人同行七十稀,五树梅花廿一枝,七子团圆正半月,去百零五便得知。”这样的口诀,意思是说“以三三数之,余数乘以七十;五五数之,余数乘以二十一;七七数之,余数乘十五。三者相加,如不大于一百零五,即为答数;否则须减去一百零五或其...
阅读全文

数学与程序 一道游戏题目的快速解法
HOT

题目:  有十个开关等间距排成一线,每个开关对应其上方的一盏灯(十盏灯也排成一线)。每按动一下开关,可以使对应的灯改变状态(原来亮着的将熄灭,原来熄灭的将被点亮)。  但是,由于开关之间的距离很小,每次按动开关时,相邻的一个开关也将被按动。例如:按动第5个开关,则实际上第4、5、6个开关都被按动。而按动靠边的第1个开关时,第1、2个开关都被按动。并且,无法只按动最靠边的一个开关。  现在给出十盏灯...
阅读全文

A*寻径算法
HOT

下面我来说说我理解的A*算法的原理:  A*算法是一个求最短路径的函数,为许多即时战略游戏所用刀(或许人家大型的即时战略游戏笔者算法更好,不管它)。它由两个函数组成,一个是评估函数,也就是确定人物移动的下一个位置必须离目标位置最近,评估函数评估的结果越精确,则寻径的速度越快;另一个就是寻径函数,也就根据评估的结果做出响应,然后从新位置继续评估下一个位置,若无路可走(四周都是障碍什么的),那么折回一...
阅读全文

简单快速的哈夫曼编码
HOT

作者:Hatem Mostafa 译者:happyparrot下载源代码介绍本文描述在网上能够找到的最简单,最快速的哈夫曼编码。本方法不使用任何扩展动态库,比如STL或者组件。只使用简单的C函数,比如:memset,memmove,qsort,malloc,realloc和memcpy。因此,大家都会发现,理解甚至修改这个编码都是很容易的。 背景哈夫曼压缩是个无损的压缩算法,一般用来压缩文本和程序...
阅读全文

优化了的过关键点的光滑曲线拟合算法
HOT

这个是我一个数学老师(教授,数学高手,经常自己做算法)给我的例子,用于多个离散点拟合光滑曲线的,他优化了追赶法,这个例子适用于闭合和不闭合两种情况。当时由于工程情况,写的急,代码不好看,但是很好用。为了方便传递参数,我做了一个链表,用时候根据自己情况可以修改,核心算法不动即可。class CFoldPoint{public:    double X; &nb...
阅读全文

回溯法求解素数填表问题
HOT

问题是这样的:3*3的方格,填入1-10(比10更大也可以),要求相邻两数之和为素数。 这个题目除了回溯似乎没有别的方法了。一开始还想遍历所有可能的排列,然后一个一个检查。把排列的算法写出来之后就是一个递归算法(不是效率最高的,应该说是效率最差的),但有个好处,可以在里头插入检查是否满足问题约束的代码,这样就减少了搜索的数量,也就是剪枝。希望有算法大牛来看看我这个解法对不对,心里还有些没底。#in...
阅读全文

[临时] 我的抛玻璃算法 [转]
HOT

问题:有一幢100层高的大楼,给你两个完全相同的玻璃棋子。假设从某一层开始,丢下玻璃棋子就会破碎。那么怎么利用手中的两颗棋子,用一种什么样的最优策略,知道这个临界的层高呢?暴力求解,输出 9 22 34 45 55 64 72 79 85 90 94 97 99 100,代码如下:#include <iostream>#include <utility>#include &...
阅读全文

分而治之算法—距离最近的点对
HOT

给定n 个点(xi,yi)(1≤i≤n),要求找出其中距离最近的两个点。 例14-7 假设在一片金属上钻n 个大小一样的洞,如果洞太近,金属可能会断。若知道任意两个洞的最小距离,可估计金属断裂的概率。这种最小距离问题实际上也就是距离最近的点对问题。 通过检查所有的n(n- 1 ) / 2对点,并计算每一对点的距离,可以找出距离最近的一对点。这种方法所需要的时间为(n2 )。我们称这种方法为直接方法...
阅读全文

魔方阵的另一种解法
HOT

魔方阵是指元素为自然数1,2,…N2的N×N,每个元素值都不相等,每行、每列以及主、副对角线上各N个元素之和都相等。如3×3魔方阵:8 1 63 5 74 9 2奇数阶魔方阵的生成方法如下:(1) 第一个位置在第一行正中;(2) 新位置应当处于最近一个插入位置右上方,但如右上方位置已超出方阵上边界,则新位置取应选列的最下一个位置,如超出右边界则新位置取应选行的最左一个位置;(3) 若最近一个插入元...
阅读全文

n!的求解
HOT

本题采用链表(n<int)占用空间小但在处理大的数时时间较长。望那位高手指点,用较短的时间又处理较大的数。联系我:许夏,gordon772@yahoo.com.cn 多谢!程序如下:#include<stdio.h>#include<malloc.h>struct number{  int data;   struct number *n...
阅读全文
2 页 / 共 9