1 / 13
文档名称:

搜索算法.doc

格式:doc   大小:86KB   页数:13页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

搜索算法.doc

上传人:wxc6688 2020/11/29 文件大小:86 KB

下载得到文件列表

搜索算法.doc

相关文档

文档介绍

文档介绍:搜索基础
一、深度搜索(DFS)
从一个简单题目开始。
例1.输出n个元素的无重复的全排列。(1<=n<=9)
在这里我们可以对每一个元素编号,形成1,2,…,8,9个数字的全排列。我们用一个一维数组来处理,相当于有9个位置,每个位置可以放1到9,再进行重复性判断,即在每个位置放一个数字时判断它前面是否已经使用该数字。通过数组中元素值的变化,产生全排列。
下面给出非递归例程,其中,变量k是表示位置指针,数组x用来装每个位置的值。
const n=5;
var
x:array[1..10] of integer;
k:integer; {位置指针}
function try:boolean; {判重函数}
var i:integer;
begin
for i:=1 to k-1 do
if x[i]=x[k] then
begin try:=false;exit;end;
try:=true;
end;
procedure out; {输出过程}
var i:integer;
begin
for i:=1 to n do
write(x[i]);
writeln;
end;
begin
k:=1;
x[1]:=0;
while k>0 do
begin
inc(x[k]); {当前第k个位置中增加1}
if x[k]>n then {判断当前第k个位置中是否超界,超界指针后移一位}
dec(k)
else
if try then {判重}
begin
inc(k);x[k]:=0; {前进1位}
if k>n then {判断指针是否超界,决定一个排列是否完成,完成指针后移一位}
begin out;dec(k);end;
end;
end;
end.
下面是递归例程:
const n=5;
var
x:array[1..10] of integer;
function try(v1,k:integer):boolean; {判重函数,v1表示位置,k表示所放的值}
var i:integer;
begin
for i:=1 to v1-1 do
if x[i]=k then
begin try:=false;exit;end;
try:=true;
end;
procedure out; {输出过程}
var i:integer;
begin
for i:=1 to n do
write(x[i]);
writeln;
end;
procedure search(v:integer); {v表示第v个位置}
var i:integer;
begin
if v>n then begin out;exit;end; {若v超界,一个排列完成}
for i:=1 to n do {在第v个位置上分别放1到n}
if try(v,i) then {如果不重复,处理第v+1个位置}
begin x[v]:=i;search(v+1);end;
end;
begin
search(1);
end.
说明:使用非递归的好处是节约内存,当一些题目对内存消耗较大时,建议使用非递归方式;但使用递归方式在程序运行时间上要好一些,因为在每个节点扩展时,递归方式少一个范围超界判断。
例题一
简单的背包问题。
设有一个背包,可以放入的重量为s。现有n件物品,重量分别为均为正整数,从n件物品中挑选若干件,使得放入背包的重量之和正好为s。
分析:可以设定n个位置,每个位置只能放0和1,这样形成一个0和1可重复的排列,或者是产生一个n位的2进制数。
例程:
var
w:array[1..20] of integer;

最近更新

2024年上饶职业技术学院单招职业技能测试题库.. 55页

2024年内蒙古电子信息职业技术学院单招职业适.. 56页

2024年四川省高职单招职业适应性测试题库及完.. 56页

2024年山东省高职单招职业适应性测试题库附答.. 44页

综合解析湖南长沙市实验中学物理八年级下册期.. 18页

一级建造师之一建公路工程实务题库1000道含答.. 302页

一级建造师之一建工程法规题库1000道附答案【.. 329页

一级建造师之一建港口与航道工程实务题库1000.. 306页

演出经纪人之演出市场政策与法律法规题库400道.. 117页

演出经纪人考试题库1000道精品带答案 276页

2024年厦门理工学院单招职业技能测试题库及参.. 55页

中医常见病症护理ppt课件 23页

2024年湖南艺术职业学院单招职业适应性测试试.. 74页

综合解析河南周口淮阳第一高级中学物理八年级.. 20页

2024年山西药科职业学院单招综合素质考试题库.. 56页

2024年海南软件职业技术学院单招职业适应性测.. 57页

综合解析四川德阳外国语学校物理八年级下册期.. 21页

系统安全模式有什么作用 4页

粤菜西兰花简单美味家常做法 4页

鼻咽癌中hsa-miR-26a功能的初步研究的综述报告.. 2页

加强领导强化管理全力推进“1-3”安全监控工作.. 11页

黑龙江省漠河县老沟西金矿成矿条件及找矿潜力.. 2页

慢性胃炎中医症候评分表格模板2 3页

教师心得体会师德感悟篇范文2023年 9页

学校食堂6s管理内容和标准四篇 51页

夹江陶瓷产业发展历程和基本概况 5页

超声科质量控制评分表(共1页) 1页

医院管理精品-康复科脑梗塞恢复期单病种诊疗规.. 3页

尊师开示 7页

十五种解经讲道法(1) 55页