private void nearestNeighbour(int start, long startTime){
		int currentCity=start;
		double val=0;
		boolean[] visited = new boolean[N];
		ArrayList<Integer> tempPath=new ArrayList<Integer>(N);
		tempPath.add(currentCity);
		visited[currentCity]=true;
		int closestCity=start;
		int size=1;
		//int visitedCities=1;
		while(size<N){
			if(TWOSTARTINGPOINTS){
				if(System.nanoTime()-startTime>LIMIT){
					//		System.out.println("break");
					return;
				}
			}
			double minValue=Double.MAX_VALUE;
			int[] neighbours=distanceMatrix[currentCity];
			for(int i=0; i<N; i++){

				if(neighbours[i]<minValue && !tempPath.contains(i)){

					minValue=neighbours[i];
					closestCity=i;
				}
			}

			tempPath.add(closestCity);
			size++;
			currentCity=closestCity;
			val=val+minValue;


		}
		if(val<value){
			path=tempPath;
			value=tourDistance(path);
		}
		return;


	}