Given an undirected graph $G$ and integer $d$, find a sub-graph $H$ of $G$ such that every node in $H$ has minimum degree $d$.
I wonder if there is any condition to decide whether $H$ exists or not. If such $H$ exists, is there any polynomial algorithm to find such $H$.
Remove all vertices from $G$ of degree less than $d$ and call the resulting graph $G_1$; if there is such a subgraph $H$ of $G$, then $H$ contains no vertex in $G \setminus G_1$. Then remove from $G_1$ all vertices of degree(in the smaller graph $G_1$) of degree less than $d$ and call the resulting graph $G_2$. If there is a graph $H$ as described in your OP it can contain none of the vertices in $G_1 \setminus G_2$. Continue on in a similar fashion: For general $\ell$, remove from $G_{\ell}$ all vertices of degree(in $G_{\ell}$) of degree less than $d$ and call the resulting graph $G_{\ell+1}$. If there is a graph $H$ as described in your OP it can contain none of the vertices in $G_{\ell} \setminus G_{\ell+1}$. Stop this process when either the resulting graph is empty or when every vertex in the resulting graph $H'$ has degree at least $d$.
If there is indeed a subgraph of $G$ where every vertex has degree $d$, then the resulting graph $H'$ will be nonempty (as in each step above you didn't remove any vertices from that graph) and (as every vertex in $H'$ has degree at least $d$) is the graph you are seeking.