The paper proposes a new encoding method inspired from the block chain technology, by which an operation sequence information and the corresponding machine information is integrated in an operation node and links all operation nodes to form an operation list with pointer technology of C++ program language. Accordingly, the paper designs an individual unit ID for every possible cases. Subsequently, it describes the process of searching the optimal solution of FJSP by implementing an improved UKPK-PSO algorithm, which hybridizes a varied PSO algorithm by getting the best information from K informants and the method of keeping the elitists for next generation in iterations. With the improved algorithm we can more efficiently traverse the solution space. After obtained some better solutions with the improved PSO, we continuously search the optimal solutions by tentatively changing the chosen machines of the dominant operations. Finally, it outputs the optimal solution through some limited iterations again. By analyzing the experiment results for the instances, the paper furtherly proves that the whole algorithm is effective for FJSP.