新的排序算法——ShimaKaZe Sort
来源:互联网 发布:移动工作站推荐 知乎 编辑:程序博客网 时间:2024/06/07 18:24
p.s:本算法纯属娱乐,无任何实用价值
ShimaKaZe Sort (岛风排序):
这个排序算法是我突发奇想的,实现起来也非常简单,就是全排一遍,然后,判断一下,复杂度啊,就是O(n!*n),在已经有序的情况下可以达到O(n)。(手动滑稽)不知前人是否有人写过。
代码:
#include<iostream>#include<algorithm>using namespace std;int A[1005];int id[1005];int n;void ShimaKZ_Sort(){ for(int i=1;i<=n;++i)id[i]=i; do{ bool f=true; for(int i=1;i<n;i++)if(A[id[i]]>A[id[i+1]])f=false; if(f)break; }while(next_permutation(id+1,id+n+1));}int main(){ cin>>n; for(int i=1;i<=n;i++)scanf("%d",&A[i]); ShimaKZ_Sort(); for(int i=1;i<=n;i++)printf("%d ",A[id[i]]); return 0;}
这代码非常漂亮。就是慢了点,用神威·太湖之光,跑一百肯定没有问题。
阅读全文
6 0
- 新的排序算法——ShimaKaZe Sort
- 插入排序算法——Insertion Sort
- 选择排序算法——Selection Sort
- 归并排序算法——Merge Sort
- 经典排序算法——冒泡排序Bubble sort
- 排序算法——希尔排序(Shell Sort)
- 排序算法——快速排序(Quick Sort)
- 排序算法——插入排序(Insertion Sort)
- 排序算法——选择排序(Selection Sort)
- 排序算法——冒泡排序(Bubble Sort)
- 排序算法——归并排序(Merge Sort)
- 冒泡排序(Bubble Sort)——排序算法
- 排序算法——插入排序(Insertion Sort)
- 排序算法——选择排序(Selection Sort)
- 排序算法——冒泡排序(Bubble Sort)
- 排序算法——快速排序(Quick Sort)
- 排序算法——堆排序(Heap Sort)
- 排序算法——希尔排序(Shell Sort)
- 【Angular】源于angular传参
- iOS截图的几个场景以及解决方案
- UVA 232 字符串处理
- list的remove方法
- Shell命令大全
- 新的排序算法——ShimaKaZe Sort
- html的angular从json拿到表格
- JADE学习笔记1:JADE简介与配置
- 简单的java程序
- java算数运算符之加法
- python里使用正则表达式的限制边界功能
- angular设置一个定时器
- 拍照打开相册
- NOIP2017提高组 模拟赛 26(总结)