14-matlab排序
冒泡和选择:
clc;
clear;
n = 10; %输入数据的个数
suct = 0; %素数的个数
unsuct = 0;%非素数的个数 % a = [33 34 2 34 24 56 3 17 7 11]
for i = 1:n
fprintf('第%d个数', i);
a(i) = input('请输入:');
end
fprintf('输入的序列为:')
a
for i = 1 : n
% a=input('输入:');
if isprime(a(i)) == 1
suct = suct + 1;
su(suct) = a(i);
else
unsuct = unsuct + 1;
unsu(unsuct) = a(i);
end
end
su1 = su;
fprintf('素数排序前:')
su
%冒泡排序:
n = suct;
for i = 1:n
for j = 2:n-i+1
if su1(j-1) > su1(j) %每次去找一个逆序,交换位置
temp = su1(j-1);
su1(j-1) = su1(j);
su1(j) = temp;
end
end
end
fprintf('素数冒泡排序的结果:')
su1
%非素素排序
unsu1 = unsu;
fprintf('非素数排序前:')
unsu
%冒泡排序:
n = unsuct;
for i = 1:n
for j = 2:n-i+1
if unsu1(j-1) > unsu1(j) %每次去找一个逆序,交换位置
temp = unsu1(j-1);
unsu1(j-1) = unsu1(j);
unsu1(j) = temp;
end
end
end
fprintf('非素数冒泡排序的结果:')
unsu1
clc;
clear;
n = 10; %输入数据的个数
suct = 0; %素数的个数
unsuct = 0;%非素数的个数 % a = [8 45 23 7 56 99 48 17 75 48]
% 读入十个数并判断素数:
for i = 1:n
fprintf('第%d个数', i);
a(i) = input('请输入:');
end for i = 1 : n
% a=input('输入:');
if isprime(a(i)) == 1
suct = suct + 1;
su(suct) = a(i);
else
unsuct = unsuct + 1;
unsu(unsuct) = a(i);
end
end %插入排序
%素数排序
su1 = su;
fprintf('素数排序前:')
su
m = suct;
for i=2:m
if su1(1,i)<su1(1,i-1)
j=i-1; %记录这个位置
temp=su1(i); %将这个位置的元素值取出来
su1(i)=su1(i-1); %将大的元素后移
while (j-1)>0 %这里实现待插入的元素和已排好序列进行比较
if temp<su1(j-1)
su1(j)=su1(j-1);
else
break;
end
j=j-1;
end
su1(j)=temp;
end
end
fprintf('素数选择排序的结果:')
su1 %非素数排序:
unsu1 = unsu;
fprintf('非素数排序前:')
unsu
m = unsuct;
for i=2:m
if unsu1(1,i)<unsu1(1,i-1)
j=i-1; %记录这个位置
temp=unsu1(i); %将这个位置的元素值取出来
unsu1(i)=unsu1(i-1); %将大的元素后移
while (j-1)>0 %这里实现待插入的元素和已排好序列进行比较
if temp<unsu1(j-1)
unsu1(j)=unsu1(j-1);
else
break;
end
j=j-1;
end
unsu1(j)=temp;
end
end
fprintf('非素数选择排序的结果:')
unsu1
14-matlab排序的更多相关文章
- MATLAB 排序、拟合
一.数据排序整合 1.随机生成的数,从小到大排序 clear rand('seed',1)%设置随机种子,确保随机数一样 edge_range=unifrnd (1, 10, 1, 10) edge_ ...
- php中14中排序方式的实现
<?php if (PHP_SAPI == 'cli') { define('EOL', PHP_EOL); define('T', "\t" ...
- matlab用法总结
1. Matlab怎么判断空矩阵http://www.ilovematlab.cn/thread-48915-1-1.html a=[ ] if isempty(a) 2.matlab寻找多个最大值位 ...
- 基于FPGA的音频信号的FIR滤波(Matlab+Modelsim验证)
1 设计内容 本设计是基于FPGA的音频信号FIR低通滤波,根据要求,采用Matlab对WAV音频文件进行读取和添加噪声信号.FFT分析.FIR滤波处理,并分析滤波的效果.通过Matlab的分析验证滤 ...
- Atitit.现实生活中最好使用的排序方法-----ati排序法总结
Atitit.现实生活中最好使用的排序方法-----ati排序法总结 1. 现在的问题 1 2. 排序的类别::插入排序//交换排序//选择排序(每次最小/大排在相应的位置 )//归并排序//基数排 ...
- Java集合排序及java集合类详解--(Collection, List, Set, Map)
1 集合框架 1.1 集合框架概述 1.1.1 容器简介 到目前为止,我们已经学习了如何创建多个不同的对象,定义了这些对象以后,我们就可以利用它们来做一 ...
- matlab 常用函数
Matlab常用函数 Matlab的内部常数 eps 浮点相对精度 pi 圆周率 exp 自然对数的底数e i 或j 虚数单位 Inf或 inf 无穷大 Matlab概率密度函数 ...
- <2014 08 29> MATLAB的软件结构与模块、工具箱简示
MATLAB的系统结构:三个层次.九个部分 ----------------------------------- 一.基础层 是整个系统的基础,核心内容是MATLAB部分. 1.软件主包MATLAB ...
- Matlab移植到Eigen用到的词条
同型矩阵运算满足加法交换律.结合律:并存在单位元.逆元.和0元,为同型矩阵对加法的交换环. Eigen的简单运算参考:http://blog.163.com/jiaqiang_wang/blog/st ...
- C数据结构排序算法——希尔排序法用法总结(转http://www.cnblogs.com/skywang12345/p/3597597.html)
希尔排序介绍 希尔排序(Shell Sort)是插入排序的一种,它是针对直接插入排序算法的改进.该方法又称缩小增量排序,因DL.Shell于1959年提出而得名. 希尔排序实质上是一种分组插入方法.它 ...
随机推荐
- php 数组随机取值
array_rand()在你想从数组中取出一个或多个随机的单元时相当有用.它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1. a ...
- 学习MongoDB 二:MongoDB添加、删除、修改
一.简介 MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSQL数据库产品中最热门的一种.数据被分组存储在数据集中,被称为一个集合(Collenction)和对于存储在MongoDB ...
- SDOI2018游记
为什么要写游记呢? 游啊游啊游啊游...
- c++官方文档-指针
#include<stdio.h> #include<iostream> #include<queue> #include<map> #include& ...
- 基于OpenGL编写一个简易的2D渲染框架-10 重构渲染器-Pass
Pass,渲染通路,一个渲染通路指的是一次像素处理和一次顶点处理,也就是指的是一次绘制.简单来说就是顶点数据在渲染管线中走一遍最后绘制. 渲染粒子系统的粒子时,需要开启 OpenGL 的混合模式,并使 ...
- ABAP-长文本处理
- WINFORM小列子参考
1.用树型列表动态显示菜单 密码:zx9t 二.Popup窗口提醒(桌面右下角出现) 密码:cjjo 三.台历 密码:nq4m 四.文件复制 密码:lsqj 五.进度条 密码:byti 六 ...
- attr 修改IMG src
jQuery修改img的src的方法:$("#img_id").attr("src","new_src"); 定义和用法 attr() 方法 ...
- python 在内存中处理tar.bz2文件
如果tar.bz2文件是通过网络进行下载,那么可以直接在内存进行解压后读取文件内容,不用将文件缓存到本地然后解压再进行读取,可以节省IO. 处理经过gzip压缩的tar文件的方法见:https://s ...
- Java并发知识(1)
1. 进程和线程之间有什么不同? 一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用.而线程是在进程中执行的一个任务.Java运行环境是一个包含了不同的类和 ...