the second entering variable will take the longest step. Two special vertices, $[x_{\jmath_1^k}, 0]$ and $[0, x_{\jmath_2^k}]$ are obtained.

        -   Divide $\bar{\A}_({\jmath_1,\jmath_2})$ into two parts: $\bar{\A}_1$ whose row has positive elements and $\bar{\A}_2 \le \0$. Partition $\A_{B^k}^{-1} \b$ into the corresponding $\bar{\b}_1$ and $\bar{\b}_2$.

        -   If the number of rows of $\bar{\A}_1$ is greater than or equal to $2$

            -   Compute all vertices in two dimensional plane by solving (\[subEq\]).

            -   Determine all feasible vertices which satisfy $\x_2=[x_{\jmath_1},x_{\jmath_2}]^{\Tr} \ge \0$ and $\bar{\A}_1 \x_2 \le \bar{\b}_1$.

            -   Find a pair of entering variables among all feasible vertices $\x_2$ (including the two special vertices) that minimizes the objective $[\bar{c}_{\jmath_1}, \bar{c}_{\jmath_2}] \x_2$.

            -   Update base $\A_{B^k}$ and $\c_{B^k}$, non-base $\A_{N^k}$ and $\c_{N^k}$. Compute $\A_{B^k}^{-1}$ and $\bar{\c}_{N^k} = \c_{N^k} - \c_{B^k} \A_{B^k}^{-1} \A_{N^k}$.

        -   Else if there is only one row in $\bar{\A}_1$

            -   The longest step rule is applied.

            -   Update base $\A_{B^k}$ and $\c_{B^k}$, non-base $\A_{N^k}$ and $\c_{N^k}$. Compute $\A_{B^k}^{-1}$ and $\bar{\c}_{N^k} = \c_{N^k} - \c_{B^k} \A_{B^k}^{-1} \A_{N^k}$.

        -   end (if)

    -   Else if only one element of $(\bar{\c}_{N^k})$ is negative,

        -   Dantzig’s rule (which is also the longest rule) is applied.

        -   Update base $\A_{B^k}$ and $\c_{B^k}$, non-base $\A_{N^k}$ and $\c_{N^k}$. 