第一題需要注意不要直接用浮點數進行計算,比如0.3*n可用3*n/10 #include <stdio.h>#include <string.h>int max(double a,double b){ return a>b?a:b;} int main() { int m[6];//在什麼時候做出 int w[6];//提交錯誤幾次 int v[6]={0,500,1000,1500,2000,2500}; int
普裡姆演算法:每次尋找一條權值較少,且一個頂點在集合內,另一個不在集合內的邊,添加到集合內,因為該點的添加導致其餘dis[i]儲存的非產生樹點到產生樹的距離改變,如果其餘非產生樹點到該點的距離比原來縮短了,那就改變dis[i]的值. #include <stdio.h> int main() { int dis[101]; int book[101]; int a[101][101]; int
求一個數列中的第k大的數,將前k個數建最小堆,後面若比堆頂元素還小,則捨去,否則將堆頂置換成該元素,然後維護堆,最後輸出堆頂元素~~ 若求第k小的數,則只需建最大堆即可。 public class heap_test {//求第k大的數,維護一個大小為k的最小堆private static int k,n;private static int []a=new int [101];public static void down(int i,int n){int
#include<stdio.h>//在沒看懂希爾排序之前我覺得這是什麼代碼啊,真心難懂,後來看懂過程後,發現就是簡單直接插入排序的最佳化(看懂隨手編~~) int main() { int a[100]; int i,j,k,n,gap,temp; printf("請輸入數組長度\n"); scanf("%d",&n); printf("請輸入數組元素\n"); for (i=0;i<n;i++) scanf("
#include <stdio.h>#include <string.h>int n,m;int s[100][100];int Dijkstra(int start,int end){ int i,j,k; int min; int dis[100000]; int book[100]; memset(dis,0,sizeof(dis)); memset(book,0,sizeof(book)); for
1.將HanLP的data(包含詞典和模型)放到hdfs上,然後在項目設定檔hanlp.properties中配置root的路徑,比如: root=hdfs://localhost:9000/tmp/ 2.實現com.hankcs.hanlp.corpus.io.IIOAdapter介面: public static class HadoopFileIoAdapter implements IIOAdapter { @Override public