【数学建模集训系列】公交查询系统的matlab实现-公交站点和线路对应矩阵

本文介绍了一种算法,用于从给定的数据文件中生成站点和线路矩阵,表示通过特定站点的所有线路。该过程涉及读取数据、解析线路标识和站点标识,并将这些信息组织到矩阵中。最终,生成的矩阵被保存到文本文件中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

%============================================================== % 功能: 求站点S和路线L矩阵,表示通过S的所有线路 % 日期: 8/9/2011 %============================================================== clear,clc fid=fopen('Bus.txt','r');%打开数据 if fid>0 disp('数据文件打开成功!') else disp('打开失败'),return end SLmat1=zeros(3957,520,2); temp=[]; while ~feof(fid) %for m=1:2 temp=fgetl(fid); if temp(1)=='L' temp_L=str2num(temp(2:4));%当前L的值 end fgetl(fid);temp=fgetl(fid); %第三行 if temp(1)=='上' n=find(temp=='S'); for i=1:length(n) n_S=str2num(temp(n(i)+1:n(i)+4)); SLmat1(n_S,temp_L,1)=i; end elseif temp(1)=='S'||temp(1)=='环' n=find(temp=='S'); for i=1:length(n) n_S=str2num(temp(n(i)+1:n(i)+4)); SLmat1(n_S,temp_L,1)=i; end for i=length(n):-1:1 n_S=str2num(temp(n(i)+1:n(i)+4)); SLmat1(n_S,temp_L,2)=length(n)-i+1; end end %第四行 temp=fgetl(fid); if ~isempty(temp)&&temp(1)=='下' n=find(temp=='S'); for i=1:length(n) n_S=str2num(temp(n(i)+1:n(i)+4)); SLmat1(n_S,temp_L,2)=i; end end end fclose(fid); %-------------将SL矩阵写入文本文件------------- save D:\matlab_files\SLdata_sl SLmat1 disp('站点S间的线路矩阵已经保存为D:\matlab_files\SLdata_sl.mat')


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值