In this paper, we propose a new and broadly applicable root–finding method, called as the upper–crossing/solution (US) algorithm, which belongs to the category of non-bracketing (or open domain) methods. The US algorithm is a general principle for iteratively seeking the unique root \(\theta ^*\) of a non-linear equation \(g(\theta )=0\) and its each iteration consists of two steps: an upper–crossing step (U-step) and a solution step (S-step), where the U-step finds an upper–crossing function or a U-function \(U(\theta |\theta ^{(t)})\) [whose form depends on \(\theta ^{(t)}\) being the t-th iteration of \(\theta ^*\) ] based on a new notion of so-called changing direction inequality, and the S-step solves the simple U-equation \(U(\theta |\theta ^{(t)}) =0\) to obtain its explicit solution \(\theta ^{(t+1)}\) . The US algorithm holds two key advantages: (i) It strongly stably converges to the root \(\theta ^*\) ; and (ii) it does not depend on any initial values, in contrast to Newton’s method. The key step for applying the US algorithm is to construct one simple U-function \(U(\theta |\theta ^{(t)})\) such that an explicit solution to the U-equation \(U(\theta |\theta ^{(t)}) =0\) is available. Based on the first–, second–, third– and block–derivative of \(g(\theta )\) , four methods are given for establishing such U-functions. An analysis of the convergence rate of the US algorithm is provided. Furthermore, we develop an acceleration technique for the US algorithm, resulting in a weakly stable convergence. Some numerical experiments and comparisons are also presented. Especially, because of the property of strongly stable convergence, the US algorithm could be one of the powerful tools for solving an equation with multiple roots.