❶ 基於php的排課系統可以參考的文獻及資料有哪些
親,網路文庫上有文檔說明資料不知是否能滿足你要尋找的,我幫你找了個能免費下載的樣例,你先看一下吧,有問題再交流。
http://wenku..com/view/7f09ac5077232f60ddcca164.html?re=view
❷ PHP中的快速排序演算法如何實現倒序
/*
php中的快速排序,並且倒序輸出
*/
function quickSort($array)
{
if(!isset($array[1]))
return $array;
$mid = $array[0]; //獲取一個用於分割的關鍵字,一般是首個元素
$leftArray = array();
$rightArray = array();
foreach($array as $v)
{
if($v > $mid)
$rightArray[] = $v; //把比$mid大的數放到一個數組里
if($v < $mid)
$leftArray[] = $v; //把比$mid小的數放到另一個數組里
}
$leftArray = quickSort($leftArray); //把比較小的數組再一次進行分割
$leftArray[] = $mid; //把分割的元素加到小的數組後面,不能忘了它哦
$rightArray = quickSort($rightArray); //把比較大的數組再一次進行分割
return array_reverse(array_merge($leftArray,$rightArray)); //組合兩個結果後倒序排列
}
❸ 求高校排課演算法 源碼。。java或者php的。最好有資料庫。 [email protected]
要演算法還是要源碼?其他語言的行嗎?
❹ 自動排課系統的一些演算法思想,高手指教啊
排課演算法的重點就是課程合理安排的問題,這裡面最要的部分應該是正確的使用演算法實現數學中排列組合。
比如寫規定好某某課不能放在第幾節,某某課一天不能超過幾節,某某課屬於某個老師,同一個老師的課同一時間只能安排一節,然後根據這些先決條件進行排列組合就可以了。
good luck.
❺ php快速排序演算法
<?php
function quick_sort($arr) {
// 判斷是否需要繼續
if (count($arr) <= 1) {
return $arr;
}
$middle = $arr[0]; // 中間值
$left = array(); // 小於中間值
$right = array();// 大於中間值
// 循環比較
for ($i=1; $i < count($arr); $i++) {
if ($middle < $arr[$i]) {
// 大於中間值
$right[] = $arr[$i];
} else {
// 小於中間值
$left[] = $arr[$i];
}
}
// 遞歸排序兩邊
$left = quick_sort($left);
$right = quick_sort($right);
// 合並排序後的數據,別忘了合並中間值
return array_merge($left, array($middle), $right);
}
$arr = array(25,133,452,364,5876,293,607,365,8745,534,18,33);
echo '<pre>';
var_mp($arr);
var_mp(quick_sort($arr));
❻ php實現排期的高效演算法怎麼做
這樣的一條sql語句就可以實現吧
SELECT count(*) FROM schele WHERE channel = '$channel' and (start_time between '$start_time' and '$end_time') or (end_time between '$start_time' and '$end_time') or (start_time < '$start_time' and end_time > '$end_time')
只要保證已經存在的排期任務的開始時間和結束時間不在新增任務的開始和結束之間就可以了
❼ 排課邏輯的演算法
這是一個難題,目前還在研究中,您可以查查排課演算法
❽ PHP做web排課系統如何設計資料庫及自動排課
PHP做web排課系統
1、在排課系統中我們首先要確定一學期的科目數、每一科目的課程數,再根據所有科目的課程數確定總課程數、每天的最大課程數。
2、選一個科目,在排課中可以設置一個隨機數,如時間,然後取其中的七位數字,根據七位數字的大小順序來確定每天的課程按排的順序號,如3251643,則第一天上第三節課、第二天上第2節課、第三天上第5節課,如此類推;並記錄下已經使用的位置,在下一輪的排序中不能再使用
❾ 排課的演算法
排課演算法是一個復雜程度相當高的演算法,窮舉是行不通的。不同的班級,不同的教師的課程縱橫交錯,不可能對每一種組合一一窮舉。一間不到三十個班的學校,其課程組合的數量級常常超過整個宇宙質子數的總和。
但在這么多的課程組合中,找出「相對合理」的課程組合,滿足學校、教師、學生的要求是可行的。
❿ php幾種排序演算法實例詳解
下面給你介紹四種排序方法:
1) 插入排序(Insertion Sort)的基本思想是:
每次將一個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子文件中的適當位置,直到全部記錄插入完成為止。實現代碼如下: