算法编程
文章平均质量分 78
tjltail
这个作者很懒,什么都没留下…
展开
-
最近总结了的排序算法
// This function is used to sort numbers#include"stdio.h"#include"stdlib.h"#include"conio.h"#define SIZE 5#define EQ(a,b) ((a)==(b))#define LT(a,b) ((a)#define LQ(a,b) ((a)>(b))#define Exch原创 2006-11-04 17:17:00 · 821 阅读 · 0 评论 -
编程修养
编程修养————转载 2007-01-20 23:03:00 · 672 阅读 · 0 评论 -
一道很简单的题目
昨天下课路过隔壁班的时候,他们的老师问了一个问题,说你输入一个数n,然后输出所有1,2,3组成的长度为n的组合,回来的时候吃晚饭的时候,想了想,其实问题很简单,回溯和递归就可以搞定,回实验室后立马实验之,编译环境(linux anjuta gcc) 源代码: * Created by Anjuta version 1.2.4a *//* This file will not b原创 2007-03-27 23:26:00 · 981 阅读 · 0 评论 -
中点分割算法
今天上计算机图形学的时候,讲了个分割算法,觉得很有意思 ,回来实现之,环境(vitual c++ 6.0) //中点分割算法.cpp/******要点说明******************************************************x,y的范围,xMin给定某点(x,y) bool flagTop: 当y > yMax的时候flagTop = true ,e原创 2007-03-29 15:24:00 · 4137 阅读 · 0 评论 -
c语言学习经验
1.#include"stdio.h" #include上次在网络教室上看到有人问这个问题 ""link的时候首先在相对路径下找.h,找不到然后在到path里面找,而2 宏使用问题宏替换一般在编译前,所以没有分配任何的空间,没有任何的类型可言,同时他是直接替换宏标号,所以使用一定要小心,有些人过分的喜欢用宏,其实宏的使用也不是越多越好,要防止代码的膨胀,现在的操作系统基本都是页式管理,原创 2007-08-06 23:32:00 · 1102 阅读 · 0 评论 -
模式匹配小算法
由于项目需要,最近写了一个模式匹配算法,支持%(代表一个或者任意个字符),_(代表一个字符)通配符号,自己在vc6下测试通过. bool dbses_RegexMatch::regexMatch(unsigned char* des ,int desLen ,unsigned char* source){ int len = 0 ; unsigned char* tempS原创 2007-10-26 09:39:00 · 1694 阅读 · 4 评论 -
平衡二叉树
在项目中用了b+树,为了想比较一下性能,今天花了3-4个小时写了平衡二叉树,它能够插入,删除以及查找.可能测试不够全面,有bug,提供出来和大家共享.项目中用了b+树,所以b+树的代码不能够提供可以给我邮件批评指正tangjiliang@gmail.google.com 结点定义:#ifndef _AVLTREENODE_H#define _AVLTREENODE_H#incl原创 2007-11-12 17:23:00 · 1187 阅读 · 0 评论 -
将汉字转化为它对应的拼音
好久没有来更新博客了,今天论坛上看到将汉字转化为其相对应的拼音的题目,随写了下面的程序:(c++ vc6.0) #includestring>using namespace std;#define PY_SIZE 398 const char* __pinyin[] = { "a", "ai", "an","ang","ao", "ba", "bai原创 2008-02-27 20:36:00 · 1124 阅读 · 0 评论 -
俩个模式匹配算法(BMH and shift-Or)
BMH描叙:The Boyer-Moore-Horspool (BMH) algorithm [Horspool 1980] is a widely-knownsearch algorithm for a single pattern. The preprocessing phase of the algorithmconsists of calculating the bad charact原创 2008-02-29 16:42:00 · 2586 阅读 · 0 评论 -
kmp算法
昨天在网上找了很多的精确匹配算法,包括从前开始扫描的kmp算法,还有从后开始匹配的br算法,还有从中间向俩边匹配的LDM算法,我还是比较喜欢KMP算法,它是一种最差线性匹配算法。 一般的模式匹配算法的时间复杂度为o(n+m),n为母串长度,m为模式长度,实现很简单(环境linux anjuta)int normalStrMatch ( char * parent , char * su原创 2007-03-07 08:20:00 · 684 阅读 · 0 评论 -
不用除法实现%13操作(位操作)
今天上自习了,过几天就要考试软件工程了,但是把它复习一偏后就没有心思上自习了,效率明显的降低了,我一般对待这种事情的方式是及时终止,背着书包就回寝室了. 想起前几天在csdn上看的用位操作实现%13的操作,现在恰好在水木上看了一个类似的问题,有个算法,实现简单,有能够满足要求.描叙: N= ( 8*x + y) 其中 x = N >> 3 , y = N &ox7 (我想要原创 2007-01-13 21:31:00 · 1760 阅读 · 0 评论 -
可变参数学习
一、什么是可变参数我们在C语言编程中有时会遇到一些参数个数可变的函数,例如printf()函数,其函数原型为: int printf( const char* format, ...); 它除了有一个参数format固定以外,后面跟的参数的个数和类型是可变的(用三个点“…”做参数占位符),实际调用时可以有以下的形式: printf("%d",i); printf("%s",s);转载 2007-01-04 16:11:00 · 627 阅读 · 0 评论 -
c语言 time.h
C语言-time.h从头学 本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了阐述。本文还通过大量的实例向你展示了time.h头文件中声明的各种函数和数据结构的详细使用方法。 关键字:UTC(世界标准时间),Calendar Time(日历时间),epoch(时间点),clock tick(时钟计时单元)转载 2006-12-04 11:53:00 · 1357 阅读 · 0 评论 -
八皇后问题一种求解思路
//这个程序是用来求八皇后问题的所有解//基本思路是当(i,j)位置被皇后占了的时候,i行,j列,和i+j,i-j相等的斜行也不能够被其他皇后占有#include"stdio.h"#include"stdlib.h"#define SIZE 8#define TOTALNUM 100 int row[ SIZE ] ;//记录行的数组int col[ SIZE ] ;//记录列的数组i原创 2006-12-05 10:37:00 · 2052 阅读 · 1 评论 -
数学猜想
数学猜想 1.【回归数猜想】 英国大数学家哈代(G.H.Hardy,1877-1947)曾经发现过一种有趣的现象: 153=1转载 2006-12-05 17:01:00 · 4267 阅读 · 0 评论 -
程序空间换时间小例子
我们写程序总是希望时间和空间复杂度相对的底一点,但是往往时间和空间俩个不可能同时的底,一般时间少了,空间不免多了,空间少了,时间又相映的增加,但是,要在时间上来减少复杂度有时候似乎不可能,除了在算法上下工夫,似乎无能为力,但是空间就不同了,随着硬件技术的发展,计算机的内存是越来越大,有时候损失空间来提高时间是可取的,用户对时间的等待是不可容忍的,但是对空间并不是那么敏感!1,知道一组数的范原创 2006-12-17 10:34:00 · 2406 阅读 · 1 评论 -
任何进制的任何数(没有大小限制)向任何进制的数的转换方法(进制原则可以任意,但是大于十表示不方便)
#include"stdio.h"#include"stdlib.h"#include"time.h"#define SIZE 100char *input ;// the chars input char *output ;// the chars output int sJinZhi ; //the start Jinzhi int eJinZhi ; // the end Ji原创 2006-12-19 08:11:00 · 1206 阅读 · 0 评论 -
mem.h函数库
mem.h 函数名称: memccpy函数原型: void *memccpy(void *dest, const void *src, int c, size_t n)函数功能: 字符串拷贝,到指定长度或遇到指定字符时停止拷贝函数返回:参数说明: src-源字符串指针,c-中止拷贝检查字符,n-长度,dest-拷贝底目的字符串指针所属文件: <s原创 2006-12-28 16:24:00 · 5146 阅读 · 0 评论 -
奇数魔幻矩阵生成算法
所谓奇数魔幻矩阵就是n*n的矩阵(n为奇数)变换成行,列以及对角线的和都相等! 首先了解其生成法则: 1 ,第一个数字在第一行的中间位置 2,在最新插入的右上角插入接下来的数,如果向上超出了界限,在最行的最后一行插入,如果右超出了界限,在行的最左边插入 3.如果插入数为n的倍数,则在列下放插入 程序 : #include"stdlib.h"#include"stdio.h"#in原创 2006-12-28 23:47:00 · 2416 阅读 · 0 评论 -
MS的一道面试题~,求解
是Josephus问题的变形Josephus问题1. 问题的由来Josephus问题是以10世纪的著名历史学家Flavius Josephus命名的. 据说, Josephus如果没有数学才能, 他就不会在活着的时候出名! 在犹太人和古罗马人战争期间, 他是陷如罗马人陷阱的41个犹太反抗者之一. 反抗者宁死不做俘虏, 他们决定围成一个圆圈,且围绕圆圈来进行, 杀死所有第3个剩下的人直原创 2006-12-28 15:23:00 · 1099 阅读 · 0 评论 -
dawg (directed acyclic word graphic)
最近研究多模式匹配算法,有个算法里面提到需要用一个有向无环字图,在网上找不到关于这方面的东西,经过多方面的努力,找到了建图的原理,以及建立的算法。自己编码实现了。原理及其分析篇幅有点长,需要的可以给我邮件,现在提供算法,以及实现。 builddawg(S)1. Create a node named source.2. Let activenode be source.3. For原创 2008-03-11 10:11:00 · 10287 阅读 · 0 评论