要求如題,是QQ群里一個大神讓我敲的demo,花了2個小時,用c語言實現。但是數組的元素只能是正數!
思路是: 1).先求出數組的總和sum, sum/2=mid 2).然后將數組的元素跟mid比較,取出跟mid最接近的元素,放在第一個小數組里,然后在原來數組刪除剛剛被取出的元素,更新原來數組 3).接著再取出離mid最近的元素,放在第二個小數組,在原數組中刪除剛剛被取出的元素,更新原來數組 4).遍歷原來數組,重復2和3,往后的元素放在第一個小數組或者第二個小數組,取決于兩個小數組的所有元素的總和,哪個總和小就放在哪個小數組
#include<stdio.h>void binaryMiun(int s[], int n);int abs(int a);int main() { int n, i, t; int s[n]; 測試:
新聞熱點
疑難解答