- 博客(12)
- 资源 (25)
- 收藏
- 关注
原创 浅谈字符串匹配算法—BF算法及KMP算法
字符串匹配,在实际编程中经常遇到。其相应的算法有很多,本文就BF算法和KMP算法,谈一下自己的理解。并结合平时编程,修改了一下,使其更符合我们的使用习惯。(注:标准BF算法和KMP算法,为研究方便,其字符数组[0]存放的都是字符串的长度。本文讲解中,并没有保存字符串长度。后面给出的示例代码中,字符数组中是否保存有字符串长度,都给出了相应的算法代码。)一、BF算法(Brute Force):
2013-06-26 15:41:16 8049 5
原创 利用递归求解八皇后问题
利用递归求解八皇后此类问题。#include #include #define ROW 8 //8行 修改行数、列数,可求解对应的N皇后问题#define COLUMN 8 //8列int notDanger(int row,int column,int (*chess)[]);void EightQueen(int row,int column,int (*chess)[]
2013-06-23 14:11:48 1415 1
转载 Silverlight中调用麦克风模拟录音机设备,存储为WAV音频
Silverlight实用窍门系列:41.Silverlight中调用麦克风模拟录音机设备,存储为WAV音频在Silverlight 4中支持了麦克风设置的调用,在本节中我们将调用麦克风设备,然后进行录音,并且将录制的声音存取为Wav音频文件。 第一步、首先我们从AudioSink类派生一个音频接收器类:WavAudioSink。其代码如下所示: public class WavAudio
2013-06-20 17:50:16 1756
原创 C# WinForm 程序单实例运行,再次运行时激活前一个实例
一个简单的小程序,演示了winform程序如何运行单实例。当有实例运行时,再次单击,会激活第一个实例。附主要源码:Program.csusing System;using System.Collections.Generic;using System.Linq;using System.Windows.Forms;using System.Threading;names
2013-06-20 17:22:04 7367 3
原创 递归和分治思想的典型应用—汉诺塔问题
首先,讲解一下汉诺塔问题的由来:一位法国数学家曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根
2013-06-19 18:00:18 2740 1
原创 二分查找算法
二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以
2013-06-19 16:16:00 1364 1
原创 队列的基本操作(采用链式存储结构)
队列的初始化、入队、出对、销毁队列。#include #include #define TRUE 1#define FALSE 0#define ERROR -1typedef int Status;typedef char ElemType;typedef struct qNode{ ElemType data; struct qNode *next;
2013-06-19 14:51:05 4317
原创 如何利用堆栈及逆波兰表达式进行数学四则运算(C语言版)
本文演示如何利用自定义堆栈(可实现通用性)和逆波兰表达式(后缀表达式)来进行数学四则运算。阅读须知:了解堆栈定义过程、了解中缀表达式、了解后缀表达式(逆波兰表达式)。不清楚的同学百度一下,用10分钟了解一下即可。示例程序优点:1,自己做了一些注释, 尽量将转换原理和计算原理说清一些,如果还有看不明白的同学,只好移步百度谷歌了。2,自己定义了一个堆栈,可实现数据类型无关性。简称通用性
2013-06-18 19:09:39 9435 6
原创 栈的基本操作(采用顺序存储结构)
关于栈的基本操作,记录一下,方便以后查看。包括栈的初始化、入栈、出栈、清空栈、销毁栈、获取已入栈元素个数#include #include #define TRUE 1#define FALSE 0#define ERROR -1#define STACKINITSIZE 20#define STACKADDSIZE 5typedef int ElemType;type
2013-06-14 11:25:52 16035 1
转载 判断循环链表是否有环
判断一个单向链表是否有环。(指向表头结点的指针为head)方法一:(1)用两个指针p1和p2分别指向表头结点,即p1=p2=head(2)p1和p2分别采用1和2作为步长遍历该链表。(注意,p2应该检查当前结点的下一个结点是否为NULL)(3)如果p1或者p2遇到了NULL,则证明该链表没有环;若p1和p2在某时刻指向
2013-06-13 11:45:32 7813
原创 C语言求解约瑟夫问题
约瑟夫问题简述:著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数到3,循环直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从,于是,他将朋
2013-06-09 14:39:15 4908
转载 C语言函数返回值的相关问题
程序一:int main(){ int *p; int i; int*fun(void); p=fun(); for(i=0;i { printf("%d\n",*p); p++; } return 0;};int* fun(void){
2013-06-03 10:38:14 1631
iOS and macOS Performance Tuning.zip
2020-04-01
IPhone 按键音素材(43个)
2015-12-09
xmpp_ios_demo
2015-03-31
ChartDemoMVC
2013-08-13
蓝屏程序 自己写着玩的
2011-08-15
正则表达式实例 (包含各种验证)
2011-08-15
公司管理软件(进销存)
2011-08-15
贪吃蛇C#(算法简单)
2011-03-30
五子棋增强版(内含定时关机等)
2011-03-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人