Android Studio API Level Change
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.justin.jacky.myapplication"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
2016年3月19日
2015年9月17日
Radix Sort 基數排序法
#include "iostream"
void radix(int data[],int n);
int main()
{
int number=9;
int data[]={5,6,4,8,2,3,7,9,1};
int i;
for (i=0;i<number;i++){
printf("%d",data[i]);
}
printf("\n");
radix(data,number);
printf("\n");
for (i=0;i<number;i++){
printf("%d",data[i]);
}
printf("\n");
system("PAUSE");
return 0;
}
void radix(int data[],int n){
int k,i,j,z;
int m;
for (z=1;z<=100;z=z*10){
int temp[10][100]={0};
for (i=0;i<n;i++){
m=data[i]/z%10;
temp[m][i]=data[i];
}
k=0;
for (i=0;i<10;i++){
for (j=0;j<n;j++){
if (temp[i][j]!=0){
data[k]=temp[i][j];
k++;
}
}
}
}
}
void radix(int data[],int n);
int main()
{
int number=9;
int data[]={5,6,4,8,2,3,7,9,1};
int i;
for (i=0;i<number;i++){
printf("%d",data[i]);
}
printf("\n");
radix(data,number);
printf("\n");
for (i=0;i<number;i++){
printf("%d",data[i]);
}
printf("\n");
system("PAUSE");
return 0;
}
void radix(int data[],int n){
int k,i,j,z;
int m;
for (z=1;z<=100;z=z*10){
int temp[10][100]={0};
for (i=0;i<n;i++){
m=data[i]/z%10;
temp[m][i]=data[i];
}
k=0;
for (i=0;i<10;i++){
for (j=0;j<n;j++){
if (temp[i][j]!=0){
data[k]=temp[i][j];
k++;
}
}
}
}
}
Merge Sort 合併排序法
#include "iostream"
void mergesort(int a[],int left,int right);
void merge(int a[],int left,int mid,int right);
int main()
{
int number=9;
int data[]={5,6,4,8,2,3,7,9,1};
int i;
for (i=0;i<number;i++){
printf("%d",data[i]);
}
printf("\n");
mergesort(data,0,number-1);
printf("\n");
for (i=0;i<number;i++){
printf("%d",data[i]);
}
printf("\n");
system("PAUSE");
return 0;
}
void mergesort(int data[],int left,int right){
int mid;
if (right>left){
mid=(right+left)/2;
mergesort(data,left,mid);
mergesort(data,mid+1,right);
merge(data,left,mid,right);
}
}
void merge(int data[],int left,int mid,int right){
int rux[right-left+1];
int i=left;
int j=mid+1;
int k;
for (k=0;k<right-left+1;k++){
if (i==mid+1){
rux[k]=data[j];
j++;
}else if (j==right+1){
rux[k]=data[i];
i++;
}else{
rux[k]= data[i]<data[j] ? data[i++]:data[j++];
}
}
for (k=0,j=left;j<right+1;j++,k++)
data[j]=rux[k];
}
void mergesort(int a[],int left,int right);
void merge(int a[],int left,int mid,int right);
int main()
{
int number=9;
int data[]={5,6,4,8,2,3,7,9,1};
int i;
for (i=0;i<number;i++){
printf("%d",data[i]);
}
printf("\n");
mergesort(data,0,number-1);
printf("\n");
for (i=0;i<number;i++){
printf("%d",data[i]);
}
printf("\n");
system("PAUSE");
return 0;
}
void mergesort(int data[],int left,int right){
int mid;
if (right>left){
mid=(right+left)/2;
mergesort(data,left,mid);
mergesort(data,mid+1,right);
merge(data,left,mid,right);
}
}
void merge(int data[],int left,int mid,int right){
int rux[right-left+1];
int i=left;
int j=mid+1;
int k;
for (k=0;k<right-left+1;k++){
if (i==mid+1){
rux[k]=data[j];
j++;
}else if (j==right+1){
rux[k]=data[i];
i++;
}else{
rux[k]= data[i]<data[j] ? data[i++]:data[j++];
}
}
for (k=0,j=left;j<right+1;j++,k++)
data[j]=rux[k];
}
訂閱:
文章 (Atom)