Jadi ceritanya begindang....
Ane dah bikin program penjualan dan masing - masing marketing punya hak akses untuk membuat konfirmasi permintaan,
So karena marketingnya banyak, dan ada user yang bikin terus hapus so jadinya counter penomoran jadi lompat lompat dan gak urut.
Nah saat ada marketing yang bikin konfirmasi trus kemudian gak jadi dan di hapus so bikin ada nomor yang bolong dan lompat,
untuk mengatasinya bikin script ini nih di PHP dan codeignitternya
untuk pakai bahasa lainnya misal c++, java, python, c#
kunjungi link ini ya...
https://www.geeksforgeeks.org/find-missing-element-in-a-sorted-array-of-consecutive-numbers/
okkay untuk yang di PHP berikut scriptnya
okkay pertama di controller helper bikin ini nih
$arr1 = {1,2,3,5,6,7,8};
$n = count($arr1);
$xx = findMissing($arr2, $n);
dan di helper codeignitter bikin function ini
function findMissing($arr, $n)
{
$l = 0;
$h = $n - 1;
while ($h > $l) {
$mid = floor($l + ($h - $l) / 2);
// Check if middle element is consistent
if ($arr[$mid] - $mid == $arr[0]) {
// No inconsistency till middle elements
// When missing element is just after
// the middle element
if ($arr[$mid + 1] - $arr[$mid] > 1)
return $arr[$mid] + 1;
else {
// Move right
$l = $mid + 1;
}
} else {
// Inconsistency found
// When missing element is just before
// the middle element
if ($arr[$mid] - $arr[$mid - 1] > 1)
return $arr[$mid] - 1;
else {
// Move left
$h = $mid - 1;
}
}
}
// No missing element found
return 0;
}
So kalau $xx di var dump muncul deh hasilnya 4
sekian...
Ane dah bikin program penjualan dan masing - masing marketing punya hak akses untuk membuat konfirmasi permintaan,
So karena marketingnya banyak, dan ada user yang bikin terus hapus so jadinya counter penomoran jadi lompat lompat dan gak urut.
Nah saat ada marketing yang bikin konfirmasi trus kemudian gak jadi dan di hapus so bikin ada nomor yang bolong dan lompat,
untuk mengatasinya bikin script ini nih di PHP dan codeignitternya
untuk pakai bahasa lainnya misal c++, java, python, c#
kunjungi link ini ya...
https://www.geeksforgeeks.org/find-missing-element-in-a-sorted-array-of-consecutive-numbers/
okkay untuk yang di PHP berikut scriptnya
okkay pertama di controller helper bikin ini nih
$arr1 = {1,2,3,5,6,7,8};
$n = count($arr1);
$xx = findMissing($arr2, $n);
dan di helper codeignitter bikin function ini
function findMissing($arr, $n)
{
$l = 0;
$h = $n - 1;
while ($h > $l) {
$mid = floor($l + ($h - $l) / 2);
// Check if middle element is consistent
if ($arr[$mid] - $mid == $arr[0]) {
// No inconsistency till middle elements
// When missing element is just after
// the middle element
if ($arr[$mid + 1] - $arr[$mid] > 1)
return $arr[$mid] + 1;
else {
// Move right
$l = $mid + 1;
}
} else {
// Inconsistency found
// When missing element is just before
// the middle element
if ($arr[$mid] - $arr[$mid - 1] > 1)
return $arr[$mid] - 1;
else {
// Move left
$h = $mid - 1;
}
}
}
// No missing element found
return 0;
}
So kalau $xx di var dump muncul deh hasilnya 4
sekian...
Tidak ada komentar:
Posting Komentar