precision of components
I will use mostly 1%. They're not much more expensive than 5%, and you have theE96 range to choose from. Otherwise you calculate a resistor at 20k\$\Omega\$, and have to do the calculation again because only 18k\$\Omega\$ and 22k\$\Omega\$ is available.  

If you take the equation for the output voltage of the LM317:  

\$ V_O = 1.25V \cdot \left(1 + \dfrac{R2}{R1}\right) + R2 \cdot I_{ADJ} \$

The 1.25V is the reference, but that can vary from 1.2V to 1.3V. \${I_{ADJ}}\$ is typically 50\$\mu\$A, but can be maximum 100\$\mu\$A.
Many will just calculate R2/R1 = 3 to get a 5V output. But if you use 5% resistors you won't get a 3:1 ratio in the E12 series. So you pick 680\$\Omega\$ and 220\$\Omega\$. That will give you nominal 5.15V, that's a 3% error, that's OK. But worst case you'll get

\$ V_O = 1.3V \cdot \left(1 + \dfrac{680\Omega \cdot 1.05}{220\Omega \cdot 0.95}\right) + (680\Omega \cdot 1.05) \cdot 100\mu A = 5.74V\$

That's a 15% error. I didn't play any dirty tricks, just used standard tolerances.

With E96 values you can pick 715\$\Omega\$ and 237\$\Omega\$ 1% resistors, and then you get 5.06V nominal, a 1% error. Worst case it will be 5.37V, a 7% error.

Use 1% resistors. The only drawback is that you may have to store more different values, though you still can use a 10k\$\Omega\$, only it will be 1% instead of 5% or 10%.