Method for searching in a memory-efficient manner for a query data element in a graph, in particular for use in a mobile terminal, comprising the steps: - segmenting the query data element into a plurality of ordered query data segments; - iteratively executing the following subsidiary steps for identifying at least one query data segment in the graph, starting from a superordinate data element having at least one subordinate data element according to the order of the ordered query data segments, wherein in a first execution of the following steps the superordinate data element corresponds to a root data element: a) comparing a subordinate data element with the respective query data segment, wherein the subordinate data element is connected to a superordinate data element by means of exactly one edge in the graph; b) storing the subordinate data element in a data memory as a superordinate data element, if the subordinate data element comprises the respective query data segment, wherein a previously stored superordinate data element is overwritten by the subordinate data element and wherein further method steps relate to the subordinate data element stored as a superordinate data element and to a further query data segment; and c) repetition of steps a) and b) with a further subordinate data element, if the subordinate data element does not comprise the respective query data segment; - providing the stored superordinate data element by reading out from the data memory, if all query data segments are identified in the graph. - segmenting the query data element into a plurality of ordered query data segments; - iteratively executing the following subsidiary steps for identifying at least one query data segment in the graph, starting from a superordinate data element having at least one subordinate data element according to the order of the ordered query data segments, wherein in a first execution of the following steps the superordinate data element corresponds to a root data element: a) comparing a subordinate data element with the respective query data segment, wherein the subordinate data element is connected to a superordinate data element by means of exactly one edge in the graph; b) storing the subordinate data element in a data memory as a superordinate data element, if the subordinate data element comprises the respective query data segment, wherein a previously stored superordinate data element is overwritten by the subordinate data element and wherein further method steps relate to the subordinate data element stored as a superordinate data element and to a further query data segment; and c) repetition of steps a) and b) with a further subordinate data element, if the subordinate data element does not comprise the respective query data segment; a) comparing a subordinate data element with the respective query data segment, wherein the subordinate data element is connected to a superordinate data element by means of exactly one edge in the graph; b) storing the subordinate data element in a data memory as a superordinate data element, if the subordinate data element comprises the respective query data segment, wherein a previously stored superordinate data element is overwritten by the subordinate data element and wherein further method steps relate to the subordinate data element stored as a superordinate data element and to a further query data segment; and c) repetition of steps a) and b) with a further subordinate data element, if the subordinate data element does not comprise the respective query data segment; - providing the stored superordinate data element by reading out from the data memory, if all query data segments are identified in the graph.