⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 quickselect.cpp

📁 这是一个利用遗传算法求解函数极值
💻 CPP
字号:
#include "stdafx.h"

#include "QuickSelect.h"

int Partition(double A[],int left,int right)
{
	int i=left,
	    j=right+1;
	double x=A[left],
		   dtemp;
	while(1)
	{
		while(A[++i]>x);
		while(A[--j]<x);
		if(i>=j) break;

		dtemp=A[i];
		A[i]=A[j];
		A[j]=dtemp;
	}
	A[left]=A[j];
	A[j]=x;
	return j;   
}

double QuickSelect(double A[],int left,int right,int k)
{
	if(left==right)
		return A[left];
	int i=Partition(A,left,right),
     	j=i-left+1;
	if(k<=j) 
	{
		if(k=j)
			return A[i];
		else
			return QuickSelect(A,left,i,k);
	}
	else
		return QuickSelect(A,i+1,right,k-j);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -