几个简单常用的算法

原创 2004年08月29日 16:34:00

#include <stdio.h>
#include <stdlib.h>

int find( int array[], int size,int date ) /*一般查找法*/
{
    int i;
    if( size <= 0 )
     return -1;
    for( i = 0; i < size; ++i )
     if( date == array[i] )
      return i;
    return -1;
}
void swap( int *pa, int *pb )/*交换*/
{
    if( (pa == NULL) || (pb == NULL) )
     return ;
    int temp;
    temp = *pa;
    *pa = *pb;
    *pb = temp;
}
void m_sort( int array[],int begin, int end )/*一般排序法*/
{
    int i;
    if( begin >= end )
     return ;
    for( i = begin + 1; i <= end; ++i )
     if( array[ begin ] > array[i] )
          swap( &array[ begin ], &array[i] );
    m_sort( array, ++begin, end );   
}
void q_sort( int array[],int begin, int end )/*快速排序法*/
{
    int i, last;
   
    if( begin >= end )
     return ;
    swap( &array[ begin ], &array[ (begin + end)/2 ]);
    last = begin;
    for( i = begin + 1; i <= end; ++i )
     if( array[i] < array[ begin ] )
      swap( &array[ ++last ], &array[i] );
    swap( &array[ begin ], &array[ last ] );
    q_sort( array, begin, last - 1 );
    q_sort( array, last + 1, end );
}
int bifind( int array[], int size, int date )/*二分查找法*/
{
    int begin, end, mid;
    begin = 0;
    end = size - 1;
   
    while( begin <= end )
    {
        mid = (begin + end)/2;
        if( date > array[ mid ] )
         begin = mid + 1;
        else if( date < array[ mid ] )
         end = mid - 1;
    else
     return mid;     
    }   
    return -1;     
}   

常见的几种内排序算法以及实现(C语言)

所有未排序的数组是经过检查合法的 主要的内排序包括冒泡、插入、希尔、堆排序、归并、快速、桶排序等 冒泡排序 冒泡排序应该是排序中最简单的算法了 主要思路如下: 1: 比较相邻的元素。如果第一个比第...
  • mcu_tian
  • mcu_tian
  • 2016年05月18日 18:43
  • 8755

8种常见机器学习算法比较

简介 机器学习算法太多了,分类、回归、聚类、推荐、图像识别领域等等,要想找到一个合适算法真的不容易,所以在实际应用中,我们一般都是采用启发式学习方式来实验。通常最开始我们都会选择大家普遍认同的算法,...
  • u014365862
  • u014365862
  • 2016年10月26日 20:35
  • 7813

适配ListView的几种常见Adapter的用法总结

万事开头难
  • jinxin_cuit
  • jinxin_cuit
  • 2016年09月07日 10:02
  • 1219

几个简单常用的js代码

  • 2007年08月01日 09:20
  • 4KB
  • 下载

c语言的几个简单算法

  • 2012年05月02日 21:48
  • 13.17MB
  • 下载

几个简单的排序算法

  • 2016年01月29日 22:15
  • 17KB
  • 下载

c++ 标准类库中几个简单的通用算法

  • 2009年08月05日 11:26
  • 931KB
  • 下载

几个常用的操作系统进程调度算法

一、先来先服务和短作业(进程)优先调度算法 1.先来先服务调度算法 先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度。当在作业调度中采用该算法...
  • qaz3171210
  • qaz3171210
  • 2015年06月05日 23:56
  • 382

几个常用的操作系统进程调度算法

一、先来先服务和短作业(进程)优先调度算法 1.先来先服务调度算法 先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度。当在作业调度中采用该算法时,每次...
  • luyafei_89430
  • luyafei_89430
  • 2013年10月23日 14:49
  • 43131

几个常用的操作系统进程调度算法

一、先来先服务和短作业(进程)优先调度算法 1.先来先服务调度算法 先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度。当在作业调度中采用该算法时,每次...
  • SunboyJohn690905084
  • SunboyJohn690905084
  • 2017年02月14日 13:45
  • 358
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:几个简单常用的算法
举报原因:
原因补充:

(最多只允许输入30个字)