Let $\lVert \cdot \rVert $ be any norm on $\mathbb{R}^n$
I want to prove that
For any $x$, there is some $z$ such that $z^{T}x = \lVert x \rVert \lVert z \rVert _{*}$
where $\lVert y \rVert _{*} = \sup \{y^{T}x : \lVert x \rVert \leq 1 \}$ is dual norm of norm $\lVert \cdot \rVert$
I heard that James' theorem in functional analysis gives desired result, but I don't have any knowledge about functional analysis. Can I prove it by using more elementary results in $\mathbb{R}^{n}$ ?
First let $x \in \mathbb{R}^n$ s.t $||x||<1$. Then there exists some scaling factor $\alpha\geq 1$ such that $||\alpha x||=1$. We can thus write
$$ y^T\alpha x = \alpha y^Tx \geq y^Tx $$
which means that
$$ ||y||_*=\sup_x\{y^Tx : ||x||\leq 1\}=\sup_x \{y^Tx : ||x||=1\}. $$
Since the set $S\triangleq \{x : ||x||=1\}$ is bounded and closed, it is compact (Heine-Borel theorem). Now, since $y^Tx$ is continous on this set, we know from the extreme value theorem that $\exists q \in S$ s.t. $y^Tq=\sup_x\{y^Tx | x\in S\}$.
In other words, there exists some $q$ with unit norm s.t. $y^Tq=||y||_*=||y||_*||q||$. Note that this equation remains valid if $q$ is rescaled.