some inference about k-NN algorithms for better understanding? I ran into some facts make me confusing.
for k-NN classifier:

I) why classification accuracy is not better with large values of k.
II) the decision boundary is not smoother with smaller value of k.
III) why decision boundary is not linear
IV) why k-NN need not explicitly training step

any example or idea would be highly appreciated me to learn me about this fact in short, or why these are True?
 A: I suggest you play with this demo here. You will see a white canvas where each click will generate one training point. You can click -- or ++ to decrease or increase k. Clicking on the red/blue rectangles will change the class of training points to be drawn. I hope it will help you answer the first three questions.

IV) why k-NN need not explicitly training step

It does not need an explicit training because given a test point whose class is to be predicted, all you need to do is to look at the neighbours (in the training set) of the point and take the majority of the labels. Basically, given a training set, you throw all the points into its space, and done. All these points will simply serve as neighbours for a new test point. 
That is the most basic form of kNN. However, in practice one extra thing people do during training to speed up the prediction is to preprocess the training set by constructing a data structure (k-d tree, for example) to allow a fast lookup of neighbours of a given test point.
