この解答例はChatGPTによって生成されています,正しいかは自己判断で。 皆の投稿からも解答例が見つかるかもしれませんよ。
BFE.devでのAI解答例 - JavaScript コーディング問題
158.「左」のDOM要素を返す
以下はJavaScriptのコード例です。
function getLeftSibling(element) { const parent = element.parentNode; const children = parent.children; for (let i = 1; i < children.length; i++) { if (children[i] === element) { return children[i - 1]; } } return null;}
このコードは、与えられた要素の親要素から子要素を取得し、ループでその子要素の配列を調べ、与えられた要素の前にある兄弟要素があるかどうかを確認します。見つかった場合、その兄弟要素を返します。見つからなかった場合は、null
を返します。
このコードは、与えられた要素の兄弟要素を検索しているだけなので、時間複雑性はO(n)
であり、与えられた要素の親要素から子要素を取得しているため、空間複雑性もO(n)
です。ただし、nは同じ親要素を持つ要素の数です。